OSEntries 2.5 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21
; Copyright 2000 Pace Micro Technology plc
;
; Licensed under the Apache License, Version 2.0 (the "License");
; you may not use this file except in compliance with the License.
; You may obtain a copy of the License at
;
;     http://www.apache.org/licenses/LICENSE-2.0
;
; Unless required by applicable law or agreed to in writing, software
; distributed under the License is distributed on an "AS IS" BASIS,
; WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
; See the License for the specific language governing permissions and
; limitations under the License.
;
; Entries to the OS from the HAL

                ^       0
OS_InitARM      #       1
OS_AddRAM       #       1
OS_Start        #       1
OS_MapInIO      #       1
Ben Avison's avatar
Ben Avison committed
22
OS_AddDevice    #       1
23
OS_LogToPhys    #       1
24
OS_IICOpV       #       1
25
OS_MapInIO64    #       1
Ben Avison's avatar
Ben Avison committed
26 27

HighestOSEntry  *       :INDEX: @ - 1
28 29

; The layout of the OS header
30 31 32 33 34 35 36 37 38 39 40 41 42
                     ^  0
OSHdr_Magic          #  4 ; = "OSIm"
OSHdr_Flags          #  4
OSHdr_ImageSize      #  4 ; Size of image after decompression
OSHdr_Entries        #  4 ; Offset from header start to entry point table
OSHdr_NumEntries     #  4
OSHdr_CompressedSize #  4 ; Same as OSHdr_ImageSize if not compressed
OSHdr_DecompressHdr  #  4 ; Offset from header start to decompression header. 0 if not compressed.
OSHdr_CompressOffset #  4 ; Offset at which compression should be performed
OSHdr_size           #  0

OSHdrFlag_SupportsCompression * 1 ; OS supports compressed images
OSHdr_ValidFlags              * 1 ; Mask of all valid flags
43 44 45

; Parameters/flag for various calls

Dan Ellis's avatar
Dan Ellis committed
46 47 48 49
OSStartFlag_POR             * 1:SHL:0   ; Power-On Reset
OSStartFlag_NoCMOSReset     * 1:SHL:1	; CMOS reset inhibited (protection link etc)
OSStartFlag_CMOSReset       * 1:SHL:2	; CMOS reset (if POR and not inhibited)
OSStartFlag_NoCMOS  	    * 1:SHL:3	; There's no real NVRAM, only cache
Kevin Bracey's avatar
Kevin Bracey committed
50 51
OSStartFlag_RAMCleared      * 1:SHL:4   ; RAM has been cleared to zero

52 53 54 55 56 57
; Decompression header block
                    ^  0
OSDecompHdr_WSSize  #  4 ; Required workspace size (multiple of 4K)
OSDecompHdr_Code    #  4 ; Offset from header start to decompression code
OSDecompHdr_size    #  0

58 59 60 61 62
; OS_AddRAM flags
OSAddRAM_IsVRAM                *  1:SHL:0
OSAddRAM_VRAMNotForGeneralUse  *  1:SHL:1
OSAddRAM_NoDMA                 *  1:SHL:7 ; Don't allow any DMA here
OSAddRAM_Speed                 *  1:SHL:8 ; 4 bit value, higher = faster
63
OSAddRAM_LargeAddresses        *  1:SHL:12 ; start, end, sigbits are all shifted right 12 bits
64 65


66
                END