Files
mckernel/kernel/config/config.smp-arm64.in
Takayuki Okamoto 9989f41fd3 add arm64 support
- add arm64 dependent codes with GICv3 and SVE support
- fix bugs based on architecture separation requests
2017-09-05 15:06:27 +09:00

40 lines
1.4 KiB
Plaintext

CC = ${CROSS_COMPILE}gcc
LD = ${CROSS_COMPILE}ld
OBJDUMP = ${CROSS_COMPILE}objdump
OBJCOPY = ${CROSS_COMPILE}objcopy
# ARM64_MEMORY_LAYOUT
# ----+-----------+-----------------------
# # | page size | virtual memory space
# ----+-----------+-----------------------
# 1 | 4KB | 39bit [linux-linaro-tracking, upstream kernel]
# 2 | 4KB | 48bit
# 3 | 64KB | 42bit [CentOS]
# 4 | 64KB | 48bit
# ----+-----------+-----------------------
HOST_DIR=@KDIR@
HOST_CONFIG=$(HOST_DIR)/.config
HOST_KERNEL_CONFIG_ARM64_64K_PAGES=$(shell grep -E "^CONFIG_ARM64_64K_PAGES=y" $(HOST_CONFIG) | sed 's|CONFIG_ARM64_64K_PAGES=||g')
HOST_KERNEL_CONFIG_ARM64_VA_BITS=$(shell grep -E "^CONFIG_ARM64_VA_BITS=" $(HOST_CONFIG) | sed 's|CONFIG_ARM64_VA_BITS=||g')
ifeq ($(HOST_KERNEL_CONFIG_ARM64_64K_PAGES), y)
ifeq ($(HOST_KERNEL_CONFIG_ARM64_VA_BITS), 42)
$(info PAGE_SIZE:64KB VA_BITS:42 PGTABLE_LEVELS:2)
ARM64_MEMORY_LAYOUT=3
else
$(info PAGE_SIZE:64KB VA_BITS:48, PGTABLE_LEVELS:3)
ARM64_MEMORY_LAYOUT=4
endif
else
ifeq ($(HOST_KERNEL_CONFIG_ARM64_VA_BITS), 39)
$(info PAGE_SIZE:4KB VA_BITS:39 PGTABLE_LEVELS:3)
ARM64_MEMORY_LAYOUT=1
else
$(info PAGE_SIZE:4KB VA_BITS:48 PGTABLE_LEVELS:4)
ARM64_MEMORY_LAYOUT=2
endif
endif
$(info linker script:smp-arm64_type$(ARM64_MEMORY_LAYOUT).lds)
LDFLAGS += -T $(SRC)/config/smp-arm64_type$(ARM64_MEMORY_LAYOUT).lds