arm64: Opt-out NMI for ThunderX2
Change-Id: I064da55e7e09e6d248c92ece5c56f9a9770c84a0
This commit is contained in:
@@ -124,13 +124,29 @@ elseif (BUILD_TARGET STREQUAL "smp-arm64")
|
|||||||
OUTPUT_VARIABLE CONFIG_ARM64_VHE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_VARIABLE CONFIG_ARM64_VHE OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
execute_process(COMMAND awk -F= "$1 == \"CONFIG_ARM_GIC_V3\" { print $2; exit; }" "${KERNEL_DIR}/.config"
|
execute_process(COMMAND awk -F= "$1 == \"CONFIG_ARM_GIC_V3\" { print $2; exit; }" "${KERNEL_DIR}/.config"
|
||||||
OUTPUT_VARIABLE CONFIG_ARM_GIC_V3 OUTPUT_STRIP_TRAILING_WHITESPACE)
|
OUTPUT_VARIABLE CONFIG_ARM_GIC_V3 OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
execute_process(COMMAND bash -c "gawk '/CPU implementer/ { print \$4; exit; }' /proc/cpuinfo"
|
||||||
|
OUTPUT_VARIABLE CPU_IMPLEMENTER OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
execute_process(COMMAND bash -c "gawk '/CPU architecture/ { print \$3; exit; }' /proc/cpuinfo"
|
||||||
|
OUTPUT_VARIABLE CPU_ARCH OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
execute_process(COMMAND bash -c "gawk '/CPU variant/ { print \$4; exit; }' /proc/cpuinfo"
|
||||||
|
OUTPUT_VARIABLE CPU_VARIANT OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
execute_process(COMMAND bash -c "gawk '/CPU part/ { print \$4; exit; }' /proc/cpuinfo"
|
||||||
|
OUTPUT_VARIABLE CPU_PART OUTPUT_STRIP_TRAILING_WHITESPACE)
|
||||||
|
|
||||||
message("Host kernel CONFIG_NR_CPUS=${CONFIG_NR_CPUS}")
|
message("Host kernel CONFIG_NR_CPUS=${CONFIG_NR_CPUS}")
|
||||||
message("Host kernel CONFIG_HZ=${CONFIG_HZ}")
|
message("Host kernel CONFIG_HZ=${CONFIG_HZ}")
|
||||||
|
|
||||||
if(CONFIG_ARM_GIC_V3 STREQUAL "y")
|
if(CONFIG_ARM_GIC_V3 STREQUAL "y")
|
||||||
add_definitions(-DCONFIG_ARM_GIC_V3=y)
|
add_definitions(-DCONFIG_ARM_GIC_V3=y)
|
||||||
#add_definitions(-DCONFIG_HAS_NMI=y)
|
# NMI by priority doesn't work with ThunderX2
|
||||||
|
if(CPU_IMPLEMENTER STREQUAL "0x43" AND CPU_ARCH STREQUAL "8" AND
|
||||||
|
CPU_VARIANT STREQUAL "0x1" AND CPU_PART STREQUAL "0x0af")
|
||||||
|
add_definitions(-DCONFIG_HAS_NMI=n)
|
||||||
|
message("CONFIG_HAS_NMI isn't defined for ThunderX2")
|
||||||
|
else()
|
||||||
|
add_definitions(-DCONFIG_HAS_NMI=y)
|
||||||
|
message("CONFIG_HAS_NMI is defined")
|
||||||
|
endif()
|
||||||
else(CONFIG_ARM_GIC_V3 STREQUAL "y")
|
else(CONFIG_ARM_GIC_V3 STREQUAL "y")
|
||||||
message(FATAL_ERROR "Host kernel must have GIC v3 enabled")
|
message(FATAL_ERROR "Host kernel must have GIC v3 enabled")
|
||||||
endif(CONFIG_ARM_GIC_V3 STREQUAL "y")
|
endif(CONFIG_ARM_GIC_V3 STREQUAL "y")
|
||||||
|
|||||||
Reference in New Issue
Block a user