Move kernel CPU address space up to 0x40800000.

This commit is contained in:
whitequark 2016-01-07 18:26:11 +00:00
parent 8778aef6a1
commit 577108554f
4 changed files with 7 additions and 7 deletions

View File

@ -7,7 +7,7 @@ from misoc.integration.soc_core import mem_decoder
class KernelCPU(Module): class KernelCPU(Module):
def __init__(self, platform, def __init__(self, platform,
exec_address=0x40400000, exec_address=0x40800000,
main_mem_origin=0x40000000, main_mem_origin=0x40000000,
l2_size=8192): l2_size=8192):
self._reset = CSRStorage(reset=1) self._reset = CSRStorage(reset=1)

View File

@ -3,8 +3,8 @@
#include "artiq_personality.h" #include "artiq_personality.h"
#define KERNELCPU_EXEC_ADDRESS 0x40400000 #define KERNELCPU_EXEC_ADDRESS 0x40800000
#define KERNELCPU_PAYLOAD_ADDRESS 0x40420000 #define KERNELCPU_PAYLOAD_ADDRESS 0x40820000
#define KERNELCPU_LAST_ADDRESS (0x4fffffff - 1024*1024) #define KERNELCPU_LAST_ADDRESS (0x4fffffff - 1024*1024)
#define KSUPPORT_HEADER_SIZE 0x80 #define KSUPPORT_HEADER_SIZE 0x80

View File

@ -3,11 +3,11 @@ ENTRY(_start)
INCLUDE generated/regions.ld INCLUDE generated/regions.ld
/* First 4M of main memory are reserved for runtime code/data /* First 8M of main memory are reserved for runtime code/data
* then comes kernel memory. First 128K of kernel memory are for support code. * then comes kernel memory. First 128K of kernel memory are for support code.
*/ */
MEMORY { MEMORY {
ksupport (RWX) : ORIGIN = 0x40400000, LENGTH = 0x20000 ksupport (RWX) : ORIGIN = 0x40800000, LENGTH = 0x20000
} }
/* On AMP systems, kernel stack is at the end of main RAM, /* On AMP systems, kernel stack is at the end of main RAM,

View File

@ -7,14 +7,14 @@ INCLUDE generated/regions.ld
* ld does not allow this expression here. * ld does not allow this expression here.
*/ */
MEMORY { MEMORY {
runtime : ORIGIN = 0x40000000, LENGTH = 0x400000 /* 4M */ runtime : ORIGIN = 0x40000000, LENGTH = 0x800000 /* 8M */
} }
/* First 4M of main memory are reserved for runtime code/data /* First 4M of main memory are reserved for runtime code/data
* then comes kernel memory. First 32K of kernel memory are for support code. * then comes kernel memory. First 32K of kernel memory are for support code.
*/ */
MEMORY { MEMORY {
kernel : ORIGIN = 0x40400000, LENGTH = 0x8000 kernel : ORIGIN = 0x40800000, LENGTH = 0x8000
} }
/* Kernel memory space start right after the runtime, /* Kernel memory space start right after the runtime,