Changes

Jump to navigation Jump to search
1,438 bytes added ,  04:21, 20 August 2017
Line 98: Line 98:  
* vmem 0xFFFFFFF800000000 is mapped to physmem 0x80000000. Similar to above, except tmp=0 due to wrap-around, etc. The chunksize used when increasing addr is 0xfffffff840000000, with another +=0x40000000 separate from the addr cmp for the loop.
 
* vmem 0xFFFFFFF800000000 is mapped to physmem 0x80000000. Similar to above, except tmp=0 due to wrap-around, etc. The chunksize used when increasing addr is 0xfffffff840000000, with another +=0x40000000 separate from the addr cmp for the loop.
 
** "endaddr = 0x3fffffff + (<size from above> | 0xfffffff800000000); enaddr = (endaddr & 0xffffffffc0000000)-1; if(endaddr >= 0xfffffff800000001){<map mem>}"
 
** "endaddr = 0x3fffffff + (<size from above> | 0xfffffff800000000); enaddr = (endaddr & 0xffffffffc0000000)-1; if(endaddr >= 0xfffffff800000001){<map mem>}"
  −
      
* Initializes level2 pagetable descriptor for vmem 0xFFFFFFF7C0000000. descriptor = 0x3 | physaddr. physaddr is core-specific.
 
* Initializes level2 pagetable descriptor for vmem 0xFFFFFFF7C0000000. descriptor = 0x3 | physaddr. physaddr is core-specific.
Line 115: Line 113:  
{| class="wikitable" border="1"
 
{| class="wikitable" border="1"
 
|-
 
|-
! Vmem
+
! Virtual
! Physmem
+
! Physical
 
! Size
 
! Size
! Descriptor ORR-value
+
! Attributes
 
! Permissions
 
! Permissions
 
! Description
 
! Description
 
|-
 
|-
| 0xFFFFFFF7FFC00000..0xFFFFFFF7FFC62000 (inclusive)
+
| 0xFFFFFFF800000000-... || 0x80000000 || ... || ? || ? || Raw DRAM access
| 0x800A0000
  −
| 0x63000
  −
| 0x78B
  −
|  
  −
| Kernel .text
   
|-
 
|-
| 0xFFFFFFF7FFC63000..0xFFFFFFF7FFC65000 (inclusive)
+
| 0xFFFFFFF7FFC00000-0xFFFFFFF7FFC62FFF || 0x800A0000 || 0x63000 || 0x78B || R-X || Kernel .text
| 0x80103000
  −
| 0x3000
  −
| 0x6000000000078B
  −
|  
  −
| Kernel .rodata
   
|-
 
|-
| 0xFFFFFFF7FFC66000..0xFFFFFFF7FFC6E000 (inclusive)
+
| 0xFFFFFFF7FFC63000-0xFFFFFFF7FFC65FFF || 0x80103000 || 0x3000 || 0x6000000000078B || R-- || Kernel .rodata
| 0x80106000
  −
| 0x9000
  −
| 0x6000000000070B
  −
|  
  −
| Kernel .data/...
  −
|}
  −
 
  −
The following uses descriptor ORR-value 0x6000000000070B, the size of each one is 0x1000-bytes.
  −
{| class="wikitable" border="1"
   
|-
 
|-
! Vmem
+
| 0xFFFFFFF7FFC66000-0xFFFFFFF7FFC6EFFF || 0x80106000 || 0x9000 || 0x6000000000070B || RW- || Kernel .data+.bss
! Physmem
   
|-
 
|-
| 0xFFFFFFF7FFDCA000 || 0x80060000
+
| 0xFFFFFFF7FFDCA000-0xFFFFFFF7FFDCAFFF || 0x80060000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDCB000 || 0x80061000
+
| 0xFFFFFFF7FFDCB000-0xFFFFFFF7FFDCBFFF || 0x80061000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDCE000 || 0x80068000
+
| 0xFFFFFFF7FFDCE000-0xFFFFFFF7FFDCEFFF || 0x80068000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDD4000 || 0x80062000
+
| 0xFFFFFFF7FFDD4000-0xFFFFFFF7FFDD4FFF || 0x80062000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDD5000 || 0x80063000
+
| 0xFFFFFFF7FFDD5000-0xFFFFFFF7FFDD5FFF || 0x80063000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDD8000 || 0x8006A000
+
| 0xFFFFFFF7FFDD8000-0xFFFFFFF7FFDD8FFF || 0x8006A000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDD9000 || 0x8006B000
+
| 0xFFFFFFF7FFDD9000-0xFFFFFFF7FFDD9FFF || 0x8006B000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDDE000 || 0x80064000
+
| 0xFFFFFFF7FFDDE000-0xFFFFFFF7FFDDEFFF || 0x80064000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDDF000 || 0x80065000
+
| 0xFFFFFFF7FFDDF000-0xFFFFFFF7FFDDFFFF || 0x80065000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDE2000 || 0x8006C000
+
| 0xFFFFFFF7FFDE2000-0xFFFFFFF7FFDE2FFF || 0x8006C000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDE3000 || 0x8006D000
+
| 0xFFFFFFF7FFDE3000-0xFFFFFFF7FFDE3FFF || 0x8006D000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDE8000 || 0x80066000
+
| 0xFFFFFFF7FFDE8000-0xFFFFFFF7FFDE8FFF || 0x80066000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDE9000 || 0x80067000
+
| 0xFFFFFFF7FFDE9000-0xFFFFFFF7FFDE9FFF || 0x80067000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDCF000 || 0x80069000
+
| 0xFFFFFFF7FFDCF000-0xFFFFFFF7FFDCFFFF || 0x80069000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDEC000 || 0x8006E000
+
| 0xFFFFFFF7FFDEC000-0xFFFFFFF7FFDECFFF || 0x8006E000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDED000 || 0x8006F000
+
| 0xFFFFFFF7FFDED000-0xFFFFFFF7FFDEDFFF || 0x8006F000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDD2000 || 0x80070000
+
| 0xFFFFFFF7FFDD2000-0xFFFFFFF7FFDD2FFF || 0x80070000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDDC000 || 0x80071000
+
| 0xFFFFFFF7FFDDC000-0xFFFFFFF7FFDDCFFF || 0x80071000 || 0x1000 || 0x6000000000070B || RW- ||
 
|-
 
|-
| 0xFFFFFFF7FFDE6000 || 0x80072000
+
| 0xFFFFFFF7FFDE6000-0xFFFFFFF7FFDE6FFF || 0x80072000 || 0x1000 || 0x6000000000070B || RW- ||
|-
  −
| 0xFFFFFFF7FFDF0000 || 0x80073000
  −
|}
  −
 
  −
The following uses descriptor ORR-value 0x60000000000607, the size of each one is 0x1000-bytes.
  −
{| class="wikitable" border="1"
   
|-
 
|-
! Vmem
+
| 0xFFFFFFF7FFDF0000-0xFFFFFFF7FFDF0FFF || 0x80073000 || 0x1000 || 0x6000000000070B || RW- ||
! Physmem
   
|-
 
|-
| 0xFFFFFFF7FFDC6000
+
| 0xFFFFFFF7FFDC6000-0xFFFFFFF7FFDC6FFF || 0x70019000 || 0x1000 || 0x60000000000607 || RW- || MC IO
| 0x70019000
   
|-
 
|-
| 0xFFFFFFF7FFDC4000
+
| 0xFFFFFFF7FFDC4000-0xFFFFFFF7FFDC4FFF || 0x7001C000 || 0x1000 || 0x60000000000607 || RW- || MC0 IO
| 0x7001C000
   
|-
 
|-
| 0xFFFFFFF7FFDC2000
+
| 0xFFFFFFF7FFDC2000-0xFFFFFFF7FFDC2FFF || 0x7001D000 || 0x1000 || 0x60000000000607 || RW- || MC1 IO
| 0x7001D000
   
|-
 
|-
| 0xFFFFFFF7FFDC0000
+
| 0xFFFFFFF7FFDC0000-0xFFFFFFF7FFDC0FFF || 0x60006000 || 0x1000 || 0x60000000000607 || RW- || CLK IO
| 0x60006000
   
|-
 
|-
| 0xFFFFFFF7FFDC8000
+
| 0xFFFFFFF7FFDC8000-0xFFFFFFF7FFDC8FFF || 0x70006000 || 0x1000 || 0x60000000000607 || RW- || UART-A IO
| 0x70006000
   
|-
 
|-
| 0xFFFFFFF7FFDFB000
+
| 0xFFFFFFF7FFDFB000-0xFFFFFFF7FFDFBFFF || 0x50041000 || 0x1000 || 0x60000000000607 || RW- || Interrupt Distributor IO
| 0x50041000
   
|-
 
|-
| 0xFFFFFFF7FFDFD000
+
| 0xFFFFFFF7FFDFD000-0xFFFFFFF7FFDFDFFF || 0x50042000 || 0x1000 || 0x60000000000607 || RW- || Interrupt Controller IO
| 0x50042000
   
|}
 
|}
  

Navigation menu