[ARM] armv7: add Makefile and Kconfig entries
This patch adds the necessary lines to the Makefile and Kconfig files for enabling the compilation of the ARMv7 CPU support. Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
This commit is contained in:
parent
065cf519c3
commit
23688e999e
|
@ -47,8 +47,13 @@ comma = ,
|
|||
# Note that GCC does not numerically define an architecture version
|
||||
# macro, but instead defines a whole series of macros which makes
|
||||
# testing for a specific architecture or later rather impossible.
|
||||
arch-$(CONFIG_CPU_32v7) :=-D__LINUX_ARM_ARCH__=7 $(call cc-option,-march=armv7a,-march=armv5t -Wa$(comma)-march=armv7a)
|
||||
arch-$(CONFIG_CPU_32v6) :=-D__LINUX_ARM_ARCH__=6 $(call cc-option,-march=armv6,-march=armv5t -Wa$(comma)-march=armv6)
|
||||
# Only override the compiler option if ARMv6. The ARMv6K extensions are
|
||||
# always available in ARMv7
|
||||
ifeq ($(CONFIG_CPU_32v6),y)
|
||||
arch-$(CONFIG_CPU_32v6K) :=-D__LINUX_ARM_ARCH__=6 $(call cc-option,-march=armv6k,-march=armv5t -Wa$(comma)-march=armv6k)
|
||||
endif
|
||||
arch-$(CONFIG_CPU_32v5) :=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4t)
|
||||
arch-$(CONFIG_CPU_32v4T) :=-D__LINUX_ARM_ARCH__=4 -march=armv4t
|
||||
arch-$(CONFIG_CPU_32v4) :=-D__LINUX_ARM_ARCH__=4 -march=armv4
|
||||
|
|
|
@ -366,6 +366,19 @@ config CPU_32v6K
|
|||
enabled will not boot on processors with do not support these
|
||||
instructions.
|
||||
|
||||
# ARMv7
|
||||
config CPU_V7
|
||||
bool "Support ARM V7 processor"
|
||||
depends on ARCH_INTEGRATOR
|
||||
select CPU_32v6K
|
||||
select CPU_32v7
|
||||
select CPU_ABRT_EV7
|
||||
select CPU_CACHE_V7
|
||||
select CPU_CACHE_VIPT
|
||||
select CPU_CP15_MMU
|
||||
select CPU_COPY_V6 if MMU
|
||||
select CPU_TLB_V6 if MMU
|
||||
|
||||
# Figure out what processor architecture version we should be using.
|
||||
# This defines the compiler instruction set which depends on the machine type.
|
||||
config CPU_32v3
|
||||
|
@ -391,6 +404,9 @@ config CPU_32v5
|
|||
config CPU_32v6
|
||||
bool
|
||||
|
||||
config CPU_32v7
|
||||
bool
|
||||
|
||||
# The abort model
|
||||
config CPU_ABRT_NOMMU
|
||||
bool
|
||||
|
@ -413,6 +429,9 @@ config CPU_ABRT_EV5TJ
|
|||
config CPU_ABRT_EV6
|
||||
bool
|
||||
|
||||
config CPU_ABRT_EV7
|
||||
bool
|
||||
|
||||
# The cache model
|
||||
config CPU_CACHE_V3
|
||||
bool
|
||||
|
@ -429,6 +448,9 @@ config CPU_CACHE_V4WB
|
|||
config CPU_CACHE_V6
|
||||
bool
|
||||
|
||||
config CPU_CACHE_V7
|
||||
bool
|
||||
|
||||
config CPU_CACHE_VIVT
|
||||
bool
|
||||
|
||||
|
@ -503,7 +525,7 @@ comment "Processor Features"
|
|||
|
||||
config ARM_THUMB
|
||||
bool "Support Thumb user binaries"
|
||||
depends on CPU_ARM720T || CPU_ARM740T || CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM940T || CPU_ARM946E || CPU_ARM1020 || CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || CPU_XSCALE || CPU_XSC3 || CPU_V6
|
||||
depends on CPU_ARM720T || CPU_ARM740T || CPU_ARM920T || CPU_ARM922T || CPU_ARM925T || CPU_ARM926T || CPU_ARM940T || CPU_ARM946E || CPU_ARM1020 || CPU_ARM1020E || CPU_ARM1022 || CPU_ARM1026 || CPU_XSCALE || CPU_XSC3 || CPU_V6 || CPU_V7
|
||||
default y
|
||||
help
|
||||
Say Y if you want to include kernel support for running user space
|
||||
|
@ -578,9 +600,15 @@ config CPU_CACHE_ROUND_ROBIN
|
|||
Say Y here to use the predictable round-robin cache replacement
|
||||
policy. Unless you specifically require this or are unsure, say N.
|
||||
|
||||
config CPU_L2CACHE_DISABLE
|
||||
bool "Disable level 2 cache"
|
||||
depends on CPU_V7
|
||||
help
|
||||
Say Y here to disable the level 2 cache. If unsure, say N.
|
||||
|
||||
config CPU_BPREDICT_DISABLE
|
||||
bool "Disable branch prediction"
|
||||
depends on CPU_ARM1020 || CPU_V6 || CPU_XSC3
|
||||
depends on CPU_ARM1020 || CPU_V6 || CPU_XSC3 || CPU_V7
|
||||
help
|
||||
Say Y here to disable branch prediction. If unsure, say N.
|
||||
|
||||
|
|
|
@ -24,12 +24,14 @@ obj-$(CONFIG_CPU_ABRT_LV4T) += abort-lv4t.o
|
|||
obj-$(CONFIG_CPU_ABRT_EV5T) += abort-ev5t.o
|
||||
obj-$(CONFIG_CPU_ABRT_EV5TJ) += abort-ev5tj.o
|
||||
obj-$(CONFIG_CPU_ABRT_EV6) += abort-ev6.o
|
||||
obj-$(CONFIG_CPU_ABRT_EV7) += abort-ev7.o
|
||||
|
||||
obj-$(CONFIG_CPU_CACHE_V3) += cache-v3.o
|
||||
obj-$(CONFIG_CPU_CACHE_V4) += cache-v4.o
|
||||
obj-$(CONFIG_CPU_CACHE_V4WT) += cache-v4wt.o
|
||||
obj-$(CONFIG_CPU_CACHE_V4WB) += cache-v4wb.o
|
||||
obj-$(CONFIG_CPU_CACHE_V6) += cache-v6.o
|
||||
obj-$(CONFIG_CPU_CACHE_V7) += cache-v7.o
|
||||
|
||||
obj-$(CONFIG_CPU_COPY_V3) += copypage-v3.o
|
||||
obj-$(CONFIG_CPU_COPY_V4WT) += copypage-v4wt.o
|
||||
|
@ -66,5 +68,6 @@ obj-$(CONFIG_CPU_SA1100) += proc-sa1100.o
|
|||
obj-$(CONFIG_CPU_XSCALE) += proc-xscale.o
|
||||
obj-$(CONFIG_CPU_XSC3) += proc-xsc3.o
|
||||
obj-$(CONFIG_CPU_V6) += proc-v6.o
|
||||
obj-$(CONFIG_CPU_V7) += proc-v7.o
|
||||
|
||||
obj-$(CONFIG_CACHE_L2X0) += cache-l2x0.o
|
||||
|
|
Loading…
Reference in New Issue