diff --git a/CHANGES b/CHANGES index 630e909f0..264084d04 100644 --- a/CHANGES +++ b/CHANGES @@ -26,6 +26,7 @@ Upcoming release: BINARY COMPATIBLE ## Changes + * Added support for the ARM Cortex A55 ## Upgrade Notes --- diff --git a/configs/seL4Config.cmake b/configs/seL4Config.cmake index 13f937a5d..2a4bae840 100644 --- a/configs/seL4Config.cmake +++ b/configs/seL4Config.cmake @@ -166,6 +166,7 @@ foreach( KernelArmCortexA15 KernelArmCortexA35 KernelArmCortexA53 + KernelArmCortexA55 KernelArmCortexA57 KernelArmCortexA72 KernelArm1136JF_S @@ -204,6 +205,7 @@ config_set(KernelArmCortexA9 ARM_CORTEX_A9 "${KernelArmCortexA9}") config_set(KernelArmCortexA15 ARM_CORTEX_A15 "${KernelArmCortexA15}") config_set(KernelArmCortexA35 ARM_CORTEX_A35 "${KernelArmCortexA35}") config_set(KernelArmCortexA53 ARM_CORTEX_A53 "${KernelArmCortexA53}") +config_set(KernelArmCortexA55 ARM_CORTEX_A55 "${KernelArmCortexA55}") config_set(KernelArmCortexA57 ARM_CORTEX_A57 "${KernelArmCortexA57}") config_set(KernelArmCortexA72 ARM_CORTEX_A72 "${KernelArmCortexA72}") config_set(KernelArm1136JF_S ARM1136JF_S "${KernelArm1136JF_S}") @@ -239,6 +241,8 @@ elseif(KernelArmCortexA35) set(KernelArmCPU "cortex-a35" CACHE INTERNAL "") elseif(KernelArmCortexA53) set(KernelArmCPU "cortex-a53" CACHE INTERNAL "") +elseif(KernelArmCortexA55) + set(KernelArmCPU "cortex-a55" CACHE INTERNAL "") elseif(KernelArmCortexA57) set(KernelArmCPU "cortex-a57" CACHE INTERNAL "") elseif(KernelArmCortexA72) diff --git a/src/arch/arm/config.cmake b/src/arch/arm/config.cmake index e9eae9556..7032613c6 100644 --- a/src/arch/arm/config.cmake +++ b/src/arch/arm/config.cmake @@ -20,6 +20,10 @@ elseif(KernelArmCortexA53) set(KernelArmICacheVIPT ON) set(KernelArmPASizeBits40 ON) math(EXPR KernelPaddrUserTop "(1 << 40)") +elseif(KernelArmCortexA55) + set(KernelArmICacheVIPT ON) + set(KernelArmPASizeBits40 ON) + math(EXPR KernelPaddrUserTop "(1 << 40)") elseif(KernelArmCortexA57) set(KernelArmPASizeBits44 ON) math(EXPR KernelPaddrUserTop "(1 << 44)") @@ -93,7 +97,7 @@ config_option( "Build as Hypervisor. Utilise ARM virtualisation extensions to build the kernel as a hypervisor" DEFAULT ${KernelSel4ArchArmHyp} DEPENDS - "KernelArmCortexA15 OR KernelArmCortexA35 OR KernelArmCortexA57 OR KernelArmCortexA53 OR KernelArmCortexA72" + "KernelArmCortexA15 OR KernelArmCortexA35 OR KernelArmCortexA57 OR KernelArmCortexA53 OR KernelArmCortexA55 OR KernelArmCortexA72" ) config_option( @@ -207,6 +211,7 @@ if( OR KernelArmCortexA15 OR KernelArmCortexA35 OR KernelArmCortexA53 + OR KernelArmCortexA55 OR KernelArmCortexA57 OR KernelArmCortexA72 )