- 04 Jun, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: Hdr/HALEntries - Added HAL_UARTDefault entry, as per HAL branch Admin: Untested Version 5.35, 4.79.2.147.2.9. Tagged as 'Kernel-5_35-4_79_2_147_2_9'
-
- 23 May, 2012 1 commit
-
-
Ben Avison authored
Detail: An undocumented entry condition of TickOne is that r0 contains the device number corresponding to Timer0. This must be passed to HAL_IRQClear on some platforms. Admin: Tested only on a Raspberry Pi. Also added enumeration of entry numbers in comments in Hdr:HALEntries - a handy reference when debugging from the command line! Version 5.35, 4.79.2.147.2.8. Tagged as 'Kernel-5_35-4_79_2_147_2_8'
-
- 20 May, 2012 1 commit
-
-
John Ballance authored
1: Added HAL_FramebufferAddress entry. 2: Minor mod the NoIrqVecSwiDispatch mods recently submitted. Improved coverage 3: Added compile time switch InverseTextTransparency to toggle sense of text (pre-wimp) for use until correct transparency behaviour is introduced in the RPi start.elf. 4: Ensured that if a non aligned frame buffer is reported, ALL of the space is actually mapped in. Detail: (list files and functions that have changed) Admin: builds and runs .. Still needs service_mode extension work to replace hard coded mode definition files (highlight level of testing that has taken place) (bugfix number if appropriate) Version 5.35, 4.79.2.147.2.5. Tagged as 'Kernel-5_35-4_79_2_147_2_5'
-
- 08 Apr, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/HALDevice - Add device ID for new SmartReflex-based CPUClk device that takes over from the current OMAP3 one on AM/DM37x devices Admin: Tested in OMAP3 ROM Version 5.35, 4.79.2.145. Tagged as 'Kernel-5_35-4_79_2_145'
-
- 25 Feb, 2012 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/OSEntries, s/HAL, s/Kernel - Add compressed ROM support. With the current scheme, a compressed ROM will have everything except the HAL and kernel compressed. During the keyboard scan period the kernel will allocate some temporary decompression workspace and call the decompression stub that was appended to the ROM. The decompression stub is expected to perform in-place decompression of the ROM. Once decompression is complete the workspace will be freed and the page tables updated to make the ROM image readonly. It's the HAL's responsibility to make sure any compressed ROM is located in an area of physically contiguous RAM large enough to hold the uncompressed image. More info here: http://www.riscosopen.org/wiki/documentation/show/Compressed%20ROMs Makefile, h/OSEntries - Add C export of hdr/OSEntries hdr/HALDevice - Add device ID for Tungsten video device. Convert tabs to spaces for consistency. hdr/HALEntries, s/NewReset - Moved KbdFlag_* definitions to hdr/HALEntries so HALs can use them in their keyboard scan code s/ArthurSWIs, S/HAL, s/HeapSort, s/Kernel, s/MemInfo, s/Middle, s/NewIRQs, s/TickEvents, s/vdu/vdugrafb - Make use of BLX, BFI and long multiplies if the CPU supports them. Don't support SWI calls from thumb mode if the CPU doesn't support thumb. s/HAL - Made the LDMIA in Init_MapInRAM more sensible (register order was backwards). The old code did work, but wasn't doing what the comments described. Removed unused/unfinished HAL_Write0 function. Improve RISCOS_LogToPhys to check L1PT for any section mappings if the logical_to_physical call fails s/ModHand - Save one instruction by using ADR instead of MOV+ADD to compute lr s/NewReset, s/PMF/key - Pass L1PT to HAL_Reset to allow machines without hardware reset (e.g. IOMD) to perform resets by manually disabling the MMU and restarting the ROM s/vdu/vdudriver, s/vdu/vdugrafv - Use GVEntry macro borrowed from NVidia module for setting up the GraphicsV jump table. Make GraphicsV_ReadPaletteEntry call HAL_Video_ReadPaletteEntry if left unclaimed. Fixup GV_Render to only call HAL_Video_Render if the HAL call is implemented. Admin: Tested with OMAP3, IOMD & Tungsten ROMs/softloads. Version 5.35, 4.79.2.138. Tagged as 'Kernel-5_35-4_79_2_138'
-
- 05 Jan, 2012 1 commit
-
-
Robert Sprowson authored
Version 5.35, 4.79.2.131. Tagged as 'Kernel-5_35-4_79_2_131'
-
- 10 Dec, 2011 1 commit
-
-
Jeffrey Lee authored
Improve heap manager. Add heap testbed. Add dummy implementation of some OS_ScreenMode reason codes. Detail: s/HeapMan, hdr/KernelWS - Heap manager improvements: - Errors generated by interrupted heap operations that are forced to complete by a OS_Heap call from the background are now cached in kernel workspace until the foreground task is resumed. This prevents them from being potentially overwritten by MessageTrans running out of background error buffers. - Added new OS_Heap reason code, #7 - Get area aligned. This allows areas of memory to be allocated at specific (power-of-2) alignments, and optionally without crossing a given (power-of-2) boundary. Alignment & boundary calculations are performed using logical addresses. - Removed the limitation that all free and allocated blocks must be a multiple of 8 bytes in length. This change was required in order to allow OS_Heap 7 to function correctly. Now the only requirements are that blocks must be multiples of 4 bytes in length, at 4 byte alignment, with a minimum length of 8 bytes. 4 extra padding bytes may still be added to the end of allocations in order to avoid creating 4-byte free blocks. s/HeapMan, TestSrc/HeapTest/Makefile, TestSrc/HeapTest/c/testbed, TestSrc/HeapTest/s/asm - Added heap testbed program. Can either use the OS_Heap SWI or directly include a copy of the Kernel's heap manager sources. s/vdudecl, s/vduswis - Added dummy implementations of OS_ScreenMode 4, 5 and 6. This prevents the Wimp generating lots of "Unknown OS_ScreenMode reason code" errors when redrawing the screen. s/Arthur3, s/Oscli - Moved dotstring closer to where it's used to avoid "ADRL out of range" errors in Tungsten build Admin: Tested in OMAP3 ROM & Tungsten ROM softload. Heap testbed successfully performed over 400 million heap ops, so there shouldn't be any serious bugs in the new code (touch wood) Version 5.35, 4.79.2.128. Tagged as 'Kernel-5_35-4_79_2_128'
-
- 27 Nov, 2011 2 commits
-
-
Robert Sprowson authored
Export less in hdr:RISCOS. Delete unused GetDecimalPair routine. Move CheckYear with other RTC stuff out of PMF/osword. Hide DebugROMInit and DebugROMErrors in release (even numbered) versions. Version 5.35, 4.79.2.127. Tagged as 'Kernel-5_35-4_79_2_127'
-
Robert Sprowson authored
Delete pmf/convdate, moved to conversions. Moved OS_BinaryToDecimal to conversions. Remove OS_ConvertHex16 and friends. Add OS_ConvertVariform skeleton. Tidied conversions. Version 5.35, 4.79.2.125. Tagged as 'Kernel-5_35-4_79_2_125'
-
- 13 Nov, 2011 2 commits
-
-
Ben Avison authored
Version 5.35, 4.79.2.122. Tagged as 'Kernel-5_35-4_79_2_122'
-
Ben Avison authored
Version 5.35, 4.79.2.98.2.54. Tagged as 'Kernel-5_35-4_79_2_98_2_54'
-
- 12 Sep, 2011 2 commits
-
-
Jeffrey Lee authored
Detail: hdr/Copro15ops: - Fixed incorrect encodings of ISH/ISHST variants of DMB/DSB instructions s/ARMops, s/HAL, hdr/KernelWS: - Replace the ARMv7 cache maintenance code with the example code from the ARMv7 ARM. This allows it to deal with caches with non power-of-two set/way counts, and caches with only one way. - Fixed Analyse_WB_CR7_Lx to use the cache level ID register to work out how many caches to query instead of just looking for a 0 result from CSSIDR. - Also only look for 7 cache levels, since level 8 doesn't exist according to the ARMv7 ARM. s/NewReset: - Removed some incorrect/misleading debug output Admin: Tested on rev A2 BB-xM Version 5.35, 4.79.2.98.2.51. Tagged as 'Kernel-5_35-4_79_2_98_2_51'
-
Ben Avison authored
Detail: hdr.ARMops added Cortex_A9 hdr.HALDevice added OMAP4 specific device IDs hdr.KernelWS changed definition of DefIRQ1Vspace for M_CortexA9 s.ARMops added CortexA9 specific code for enabling L2 cache added CPUDesc Cortex_A9 s.NewIRQs added CortexA9 specific definition of MaxInterrupts s.NewReset added M_CortexA9 options line 1444: corrected typo line 187: commented out unnecessary operation Admin: Submission from Willi Theiß Version 5.35, 4.79.2.98.2.50. Tagged as 'Kernel-5_35-4_79_2_98_2_50'
-
- 08 Aug, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: A whole mass of changes to add high processor vectors + zero page relocation support to the Cortex branch of the kernel At the moment the code can only cope with two ZeroPage locations, &0 and &FFFF0000. But with a bit more tweaking those restrictions can probably be lifted, allowing ZeroPage to be hidden at almost any address (assuming it's fixed at compile time). If I've done my job right, these restrictions should all be enforced by asserts. There's a new option, HiProcVecs, in hdr/Options to control whether high processor vectors are used. When enabling it and building a ROM, remember: * FPEmulator needs to be built with the FPEAnchor=High option specified in the components file (not FPEAnchorType=High as my FPEmulator commit comments suggested) * ShareFS needs unplugging/removing since it can't cope with it yet * Iyonix users will need to use the latest ROOL boot sequence, to ensure the softloaded modules are compatible (OMAP, etc. don't really softload much so they're OK with older sequences) * However VProtect also needs patching to fix a nasty bug there - http://www.riscosopen.org/tracker/tickets/294 The only other notable thing I can think of is that the ProcessTransfer code in s/ARM600 & s/VMSAv6 is disabled if high processor vectors are in use (it's fairly safe to say that code is obsolete in HAL builds anyway?) Fun challenge for my successor: Try setting ZeroPage to &FFFF00FF (or similar) so its value can be loaded with MVN instead of LDR. Then use positive/negative address offsets to access the contents. File changes: - hdr/ARMops - Modified ARMop macro to take the ZeroPage pointer as a parameter instead of 'zero' - hdr/Copro15ops - Corrected $quick handling in myISB macro - hdr/Options - Added ideal setting for us to use for HiProcVecs - s/AMBControl/allocate, s/AMBControl/growp, s/AMBControl/mapslot, s/AMBControl/memmap, s/AMBControl/service, s/AMBControl/shrinkp, s/Arthur2, s/Arthur3, s/ArthurSWIs, s/ChangeDyn, s/ExtraSWIs, s/HAL, s/HeapMan, s/Kernel, s/MemInfo, s/Middle, s/ModHand, s/MoreSWIs, s/MsgCode, s/NewIRQs, s/NewReset, s/Oscli, s/PMF/buffer, s/PMF/IIC, s/PMF/i2cutils, s/PMF/key, s/PMF/mouse, s/PMF/osbyte, s/PMF/oseven, s/PMF/osinit, s/PMF/osword, s/PMF/oswrch, s/SWINaming, s/Super1, s/SysComms, s/TickEvents, s/Utility, s/vdu/vdu23, s/vdu/vdudriver, s/vdu/vdugrafl, s/vdu/vdugrafv, s/vdu/vdupalxx, s/vdu/vdupointer, s/vdu/vduswis, s/vdu/vduwrch - Lots of updates to deal with zero page relocation - s/ARM600 - UseProcessTransfer option. Zero page relocation support. Deleted pre-HAL ClearPhysRAM code to tidy the file up a bit. - s/ARMops - Zero page relocation support. Set CPUFlag_HiProcVecs when high vectors are in use. - s/KbdResPC - Disable compilation of dead code - s/VMSAv6 - UseProcessTransfer option. Zero page relocation support. Admin: Tested with OMAP & Iyonix ROM softloads, both with high & low zero page. High zero page hasn't had extensive testing, but boot sequence + ROM apps seem to work. Version 5.35, 4.79.2.98.2.48. Tagged as 'Kernel-5_35-4_79_2_98_2_48'
-
- 07 Aug, 2011 3 commits
-
-
Jeffrey Lee authored
Detail: hdr/OSRSI6, s/Middle - Added ESC_Status to the list of items that OS_ReadSysInfo 6 exports Admin: Tested in ROM softload on Iyonix Version 5.35, 4.79.2.121. Tagged as 'Kernel-5_35-4_79_2_121'
-
Jeffrey Lee authored
Detail: hdr/OSRSI6, s/Middle - Added ESC_Status to the list of items that OS_ReadSysInfo 6 exports Admin: Tested on rev A2 BB-xM Version 5.35, 4.79.2.98.2.47. Tagged as 'Kernel-5_35-4_79_2_98_2_47'
-
Jeffrey Lee authored
Detail: hdr/ARMops - Reserve OS_PlatformFeatures 0 bit 20 for indicating whether high processor vectors are in use s/Kernel - Add local definitions of BYTEWS, LDROSB, STROSB, VDWS macros (previously in Hdr:Macros) s/MoreComms - Fix potential buffer overflow when filling error buffer (although GSTrans shouldn't overflow the buffer in the first place?) s/Arthur2 - GSRead number detection fix s/ArthurSWIs - Updated OS_ReadUnsigned to support reading 64bit numbers Docs/ReadUnsigned - Docs for the updated OS_ReadUnsigned interface Admin: Untested! Needs HdrSrc 1.86 Version 5.35, 4.79.2.120. Tagged as 'Kernel-5_35-4_79_2_120'
-
- 06 Aug, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/ARMops - Reserve OS_PlatformFeatures 0 bit 20 for indicating whether high processor vectors are in use s/Kernel - Add local definitions of BYTEWS, LDROSB, STROSB, VDWS macros (previously in Hdr:Macros) s/MoreComms - Fix potential buffer overflow when filling error buffer (although GSTrans shouldn't overflow the buffer in the first place?) Admin: Tested on rev A2 BB-xM Requires HdrSrc 1.86 Version 5.35, 4.79.2.98.2.46. Tagged as 'Kernel-5_35-4_79_2_98_2_46'
-
- 04 Aug, 2011 2 commits
-
-
Jeffrey Lee authored
Detail: hdr/OSRSI6 - Corrected RO version number from 5.19 to 5.17 Admin: Untested, but testing shouldn't be needed anyway Version 5.35, 4.79.2.119. Tagged as 'Kernel-5_35-4_79_2_119'
-
Jeffrey Lee authored
Detail: s/Middle - Correct the actual item numbers to match those defined in the header 9and those used in the HAL branch) hdr/OSRSI6 - Corrected ROM version numbere where the new items are available from Admin: Untested! Version 5.35, 4.79.2.98.2.45. Tagged as 'Kernel-5_35-4_79_2_98_2_45'
-
- 03 Aug, 2011 2 commits
-
-
Jeffrey Lee authored
Detail: s/Middle - Added some new OS_ReadSysInfo 6 items which are needed by the zero page relocation kernel. Also duplicated some existing entries to avoid conflicts with ROL's allocations. hdr/OSRSI6, Makefile - New header listing OS_ReadSysInfo 6 items hdr/PublicWS - Duplicated the workspace definitions for &0-&4000, but with a 'Legacy_' prefix to their names. Also added some new entries as needed by the zero page relocation kernel. Once existing modules have been updated to use OS_ReadSysInfo 6 & the Legacy_ definitions, the old defs will be removed. hdr/KernelWS - Removed 'Export_' prefix from all the exported workspace values, since the kernel can now use the original names directly hdr/Options - Dummy HiProcVecs option so merging things will be a bit cleaner Admin: Tested on rev A2 BB-xM Version 5.35, 4.79.2.98.2.44. Tagged as 'Kernel-5_35-4_79_2_98_2_44'
-
Jeffrey Lee authored
Detail: s/Middle - Added some new OS_ReadSysInfo 6 items which are needed by the zero page relocation kernel. Also duplicated some existing entries to avoid conflicts with ROL's allocations. hdr/OSRSI6, Makefile - New header listing OS_ReadSysInfo 6 items hdr/PublicWS - Duplicated the workspace definitions for &0-&4000, but with a 'Legacy_' prefix to their names. Also added some new entries as needed by the zero page relocation kernel. Once existing modules have been updated to use OS_ReadSysInfo & the Legacy_ definitions, the old defs will be removed. hdr/KernelWS - Removed 'Export_' prefix from all the exported workspace values, since the kernel can now use the original names directly hdr/Options - Dummy HiProcVecs option so merging things will be a bit cleaner Admin: Tested in ROM softload on Iyonix Version 5.35, 4.79.2.118. Tagged as 'Kernel-5_35-4_79_2_118'
-
- 01 Aug, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/HALDevice - Device types & IDs for CPU clock generator and GPIO interface hdr/HALEntries - HAL_ExtMachineID entry (but not used by this kernel yet) Admin: Tungsten ROM built OK, but untested at runtime. Version 5.35, 4.79.2.116. Tagged as 'Kernel-5_35-4_79_2_116'
-
- 31 Jul, 2011 3 commits
-
-
Jeffrey Lee authored
Detail: hdr/HALDevice - Added GPIO device type in the Comms group, and an ID for a generic OMAP3 GPIO device hdr/GPIODevice - Definition of GPIO device structure. Currently only used to store the type and revision of the main board, so the GPIO manager module can tailor its features appropriately. Makefile - Export hdr/GPIODevice Admin: Tested on rev A2 BB-xM Version 5.35, 4.79.2.98.2.42. Tagged as 'Kernel-5_35-4_79_2_98_2_42'
-
Jeffrey Lee authored
Detail: Three main changes: * On odd-numbered (i.e. development) versions of the module, the UtilityModule will now take its date from the VersionNum file instead of using a hard-coded date * All build versions now look for the new "extended ROM footer" (as created by romlinker 0.04+) at the end of the ROM image and use it to determine the ROM build date for return by OS_ReadSysInfo 9,2. Failing to find the build date in the footer will cause OS_ReadSysInfo 9,2 to return 0. * On odd-numbered versions, OS_Byte 0 will now use the ROM build date (as found in the extended footer) to generate the error block that's returned to the user. This seems OK as the PRM describes OS_Byte 0 as returning the "creation date of the operating system". Plus it's a convenient way of getting the ROM build date into the Switcher, since the switcher uses OS_Byte 0. If the extended footer can't be found (or if the string isn't initialised yet, e.g. before Service_PostInit) the code falls back to a hard-coded string containing the date from the VersionNum file. File changes: Makefile - Updated to not create the obsolete Time+Date file (previously used for the ROM build date) Version - Use date from VersionNum file for development builds hdr/Options - New UseNewFX0Error variable/option to make it easy to check which OS_Byte 0 variant should be enabled hdr/KernelWS - Added new string buffers & extended ROM footer pointer to workspace s/Middle - Updated OS_ReadSysInfo 9 code, and added utility functions for searching the extended ROM footer for certain tags s/NewReset - Added a couple of calls to initialise the new string buffers just prior to Service_PostInit. This is required since OS_Byte/OS_ReadSysInfo shouldn't enable interrupts, but date conversion relies on the Territory module, which may enable interrupts. s/PMF/osbyte - Updated OS_Byte 0 code Admin: Tested in Tungsten ROM, with and without the extended footer present. Version 5.35, 4.79.2.115. Tagged as 'Kernel-5_35-4_79_2_115'
-
Jeffrey Lee authored
Detail: Three main changes: * On odd-numbered (i.e. development) versions of the module, the UtilityModule will now take its date from the VersionNum file instead of using a hard-coded date. * All build versions now look for the new "extended ROM footer" (as created by romlinker 0.04+) at the end of the ROM image and use it to determine the ROM build date for return by OS_ReadSysInfo 9,2. Failing to find the build date in the footer will cause OS_ReadSysInfo 9,2 to return 0. * On odd-numbered versions, OS_Byte 0 will now use the ROM build date (as found in the extended footer) to generate the error block that's returned to the user. This seems OK as the PRM describes OS_Byte 0 as returning the "creation date of the operation system". Plus it's a convenient way of getting the ROM build date into the Switcher, since the switcher uses OS_Byte 0. If the extended footer can't be found (or if the string hasn't been initialised yet, e.g. before Service_PostInit) the code falls back to a hard-coded string containing the date from the VersionNum file. File changes: Makefile - Updated to not create the obsolete Time+Date file (previously used for the ROM build date) Version - Use date from VersionNum file for development builds hdr/Options - New UseNewFX0Error variable/option to make it easy to check which OS_Byte 0 variant should be enabled hdr/KernelWS - Added new string buffers & extended ROM footer pointer to workspace s/Middle - Updated OS_ReadSysInfo 9 code, and added utility functions for searching the extended ROM footer for certain tags s/NewReset - Added a couple of calls to initialise the new string buffers just prior to Service_PostInit. This is required since OS_Byte/OS_ReadSysInfo shouldn't enable interrupts, but date conversion relies on the Territory module, which may enable interrupts. s/PMF/osbyte - Updated OS_Byte 0 code Admin: Tested in OMAP ROM, with and without the extended footer present. Version 5.35, 4.79.2.98.2.41. Tagged as 'Kernel-5_35-4_79_2_98_2_41'
-
- 08 Jun, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/ARMops - Amended ARMvF description to state that an ARMvF CPU can be ARMv6 or ARMv7 s/ARMops - Move ARM11JZF_S CPUDesc to KnownCPUTable_Fancy, since it's ARMvF. Update ARM_Analyse_Fancy to detect whether ARMv6 or ARMv7 style cache control is in use, and react accordingly. s/HAL - Simplified system control register/MMUC initialisation. There are now just two types of setup - one for ARMv3-ARMv5 and one for ARMv6-ARMv7. Modified HAL_InvalidateCache_ARMvF to use the appropriate cache flush instructions depending on whether it's an ARMv6 or ARMv7 style cache. Admin: S3C6410 and other ARMv6 machines should work now. Tested on BB-xM rev A2. Version 5.35, 4.79.2.98.2.39. Tagged as 'Kernel-5_35-4_79_2_98_2_39'
-
- 04 Jun, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: Makefile - Added hdr.Variables to the C header export list hdr/ARMops, s/ARMops - Added ARM1176JZF-S to the list of known CPUs s/ARMops - Fix unaligned memory access in ARM_PrintProcessorType hdr/Copro15ops, s/ARMops, s/HAL, s/VMSAv6, s/AMBControl/memmap - Fixed all myDSB/myISB/etc. macro instances to specify a temp register, so that they work properly when building an ARMv6 version of the kernel Admin: Fixes build errors with the latest Draw module. Should also allow the kernel to work properly with the new S3C6410 port. ARMv6 version builds OK, but no other builds or runtime tests have been made. Version 5.35, 4.79.2.98.2.38. Tagged as 'Kernel-5_35-4_79_2_98_2_38'
-
- 19 Mar, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/HALDevice - Added device type & ID for new CPUClk device, as used by the new OMAP3 HAL/PortableHAL versions. s/PMF/osinit - Disable a block of dead code that was getting compiled in. Admin: Tested on rev C2 BB, rev A2 BB-xM, rev C1 TouchBook These changes are needed by the latest OMAP3 HAL & PortableHAL versions. Version 5.35, 4.79.2.98.2.36. Tagged as 'Kernel-5_35-4_79_2_98_2_36'
-
- 20 Feb, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: OS_ReadSysInfo 10 is left unimplemented since it's a bit fiddly for us. OS_ReadSysInfo 11 is compatible with ROL's implementation, exposing HAL_DebugTX and HAL_DebugRX if the HAL provides them. See here for 10,11 docs: http://select.riscos.com/prm/core/osreadsysinfo.html OS_ReadSysInfo 12 is a new call to return the 'extended machine ID', to allow the HAL to specify the format & validity of the ID. If the HAL responds to the new HAL_ExtMachineID call then it's assumed that no old-style machine ID is present. The Kernel will generate an old-style ID using the contents of the extended ID, and use that with OS_ReadSysInfo 2/5. New software should use OS_ReadSysInfo 12 in preference to 2/5. s/Middle - Updated OS_ReadSysInfo SWI s/PMF/osinit - New old-style machine ID initialisation code hdr/HALEntries - Added new HAL_ExtMachineID entry Admin: Tested on rev A2 BB-xM Version 5.35, 4.79.2.98.2.34. Tagged as 'Kernel-5_35-4_79_2_98_2_34'
-
- 19 Feb, 2011 1 commit
-
-
Jeffrey Lee authored
Detail: OS_IICOp (and in turn, RISCOS_IICOpV) now treat the top byte of R1 as containing the IIC bus number, allowing multiple buses to be used. hdr/KernelWS - Changed workspace a bit so that the kernel can support up to IICBus_Count buses (currently 3), each with its own IICBus_* block. s/HAL - Update Reset_IRQ_Handler to cope with interrupts from all IIC buses instead of just the first. Fix/update RISCOS_IICOpV description. s/NewIRQs - Update InitialiseIRQ1Vtable to set up interrupt handlers for all IRQ-supporting IIC buses s/NewReset - Get rid of the IICAbort call that was just before IICInit. IICInit now calls IICAbort itself. s/PMF/IIC - Bulk of the changes. Code now uses the IICBus_ structures instead of the IICStatus and IICType variables. Re-entrancy code has been updated to take into account the possiblity of multiple buses; when OS_IICOp calls are nested, the IIC transfers will be added to bus-specific queues instead of all going in the same queue. However only one queue will be processed at a time. s/ChangeDyn - Workspace shuffling means a couple of MOV's needed to be swapped with LDR's when getting immediate constants Admin: Tested with OMAP & IOMD ROM builds. Both high & low-level bus types seem to work OK, along with re-entrancy, both on the same bus and on a different bus. Version 5.35, 4.79.2.98.2.33. Tagged as 'Kernel-5_35-4_79_2_98_2_33'
-
- 04 Oct, 2010 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/Options - ARM6support and GetKernelMEMC values are now derived from the value of MEMM_Type s/ARMops, s/HAL - Code to detect and handle ARMv7 CPUs is now only enabled when using VMSAv6 MMU model. Saves us from having to deal with lack of myIMB, myDSB, etc. implementations on pre-ARMv6. s/HAL - Removed some debug code s/NewReset - Fix bug spotted by Tom Walker where R12 wasn't being restored by LookForHALRTC if a non-HAL RTC had already been found s/AMBControl/memmap - correct the assert clause that was checking that &FFE are the correct L2PT protection bits for non-VMSAv6 machines Admin: Tested this kernel on a rev C2 beagleboard & Iyonix softload. Also compiled it into an IOMD ROM, but didn't try running it. Version 5.35, 4.79.2.98.2.32. Tagged as 'Kernel-5_35-4_79_2_98_2_32'
-
- 24 Jun, 2010 1 commit
-
-
Jeffrey Lee authored
Version 5.35, 4.79.2.98.2.29. Tagged as 'Kernel-5_35-4_79_2_98_2_29'
-
- 23 Jun, 2010 1 commit
-
-
Jeffrey Lee authored
Update Cortex kernel to use correct instruction/memory barriers and to perform branch target predictor maintenance. Plus tweak default CMOS settings. Detail: hdr/Copro15ops - Added myISB, myDSB, myDMB macros to provide barrier functionality on ARMv6+ s/ARMops, s/HAL, s/VMSAv6, s/AMBControl/memmap - Correct barrier operations are now performed on ARMv6+ following CP15 writes. Branch predictors are now also maintained properly. s/NewReset - Change default CMOS settings so number of CDFS drives is 0 in Cortex builds. Fixes rogue CDFS icon on iconbar. Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.27. Tagged as 'Kernel-5_35-4_79_2_98_2_27'
-
- 20 Mar, 2010 2 commits
-
-
Jeffrey Lee authored
Detail: A fair number of bus/device types and IDs have been added to the Cortex branch since the branch was created. Now that the ClearIRQ entry has also been added, it's about time that the HAL branch was brought up to date. Admin: Untested, but should be fine. Version 5.35, 4.79.2.111. Tagged as 'Kernel-5_35-4_79_2_111'
-
Jeffrey Lee authored
Detail: hdr/HALDevice, h/HALDevice - inserted the new 'ClearIRQ' entry point into one of the reserved areas. Once the RISC OS-side driver has serviced the device's IRQ the ClearIRQ entry point should be called to allow the HAL device to clear any latched interrupt states in intermediate IRQ controllers (e.g. when using GPIO IRQs on OMAP) Since this entry point is new, support for it in existing device drivers isn't guaranteed; HAL device implementations of existing APIs must make sure the use a new major version number to indicate that they require ClearIRQ to be called. hdr/HALDevice - added some new bus types to represent the GPMC & L3/L4 interconnects in the OMAP. hdr/HALDevice - added ethernet NIC device type & IDs for SMSC9221 & DM9000 NICs Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.25. Tagged as 'Kernel-5_35-4_79_2_98_2_25'
-
- 28 Feb, 2010 1 commit
-
-
Jeffrey Lee authored
Update VDU HAL device for new OMAPVideo driver, fix MVA-based cache/TLB maintenance ops aborting on ARMv7, add warning to VDU driver about inconsistent state variables during screen mode changes Detail: hdr/VideoDevice - removed Address2 and Device2 fields as it makes more sense for them to be in the device specific field (which for OMAP3 is a pointer to an OMAP3-specific struct) s/VMSAv6 - Modify data abort handler to ignore aborts that are generated by MVA-based cache/TLB maintenance ops. Unlike earlier ARM architectures, MVA-based ops can abort under ARMv7 if the page has no mapping to a physical address. s/vdu/vdudriver - Add a warning about VDU driver state variables (particularly CursorAddr) being left in invalid states during the execution of mode changes. This can cause problems if any attempt is made to output to the screen during the mode change (e.g. as a result of an abort) Admin: Tested on rev C2 beagleboard. Video device changes mean that OMAP3 HAL 0.23 will be needed for ROM compilation to succeed. Version 5.35, 4.79.2.98.2.24. Tagged as 'Kernel-5_35-4_79_2_98_2_24'
-
- 24 Jan, 2010 1 commit
-
-
Jeffrey Lee authored
Detail: s/PMF/osword - Migrate the 2012 RTC fix from the HAL branch to the Cortex branch, plus apply similar fix to the code that handles HAL RTC devices (via new YearLOIsGood flag) s/PMF/i2cutils - Update HAL RTC year handling to correctly treat YearLO as either 2-bit int or 2-digit BCD hdr/RTCDevice - Add YearLOIsGood flag, revise NeedsYearHelp description Admin: Tested on rev C2 beagleboard. Code seems to behave as intended. Version 5.35, 4.79.2.98.2.21. Tagged as 'Kernel-5_35-4_79_2_98_2_21'
-
- 16 Jan, 2010 1 commit
-
-
Jeffrey Lee authored
Version 5.35, 4.79.2.98.2.19. Tagged as 'Kernel-5_35-4_79_2_98_2_19'
-
- 28 Nov, 2009 1 commit
-
-
Jeffrey Lee authored
Detail: hdr/VideoDevice, Makefile - Add initial version of header for video HAL devices hdr/HALDevice - Add device IDs for OMAP3 DMA & video devices. Admin: Tested on rev C2 beagleboard Version 5.35, 4.79.2.98.2.16. Tagged as 'Kernel-5_35-4_79_2_98_2_16'
-