aboutsummaryrefslogtreecommitdiffstats
path: root/arch/xtensa/Kconfig
diff options
context:
space:
mode:
authorMax Filippov <jcmvbkbc@gmail.com>2014-06-15 23:25:06 -0400
committerMax Filippov <jcmvbkbc@gmail.com>2014-08-14 03:59:08 -0400
commit420ae9518404c4aeda3abc8e017c8fdcc3a13d6b (patch)
tree36c40eae5e715e35a8cb77899154d9e1398fa95f /arch/xtensa/Kconfig
parent64aa90f26c06e1cb2aacfb98a7d0eccfbd6c1a91 (diff)
xtensa: simplify addition of new core variants
Instead of adding new Kconfig options and Makefile rules for each new core variant provide XTENSA_VARIANT_CUSTOM variant and record variant name in the XTENSA_VARIANT_NAME variable. Adding new core variant now means providing directory structure under arch/xtensa/variant and specifying correct name in kernel configuration. Signed-off-by: Max Filippov <jcmvbkbc@gmail.com>
Diffstat (limited to 'arch/xtensa/Kconfig')
-rw-r--r--arch/xtensa/Kconfig36
1 files changed, 35 insertions, 1 deletions
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
index 3a617af60d46..7feca8dfdff2 100644
--- a/arch/xtensa/Kconfig
+++ b/arch/xtensa/Kconfig
@@ -62,7 +62,9 @@ config TRACE_IRQFLAGS_SUPPORT
62 def_bool y 62 def_bool y
63 63
64config MMU 64config MMU
65 def_bool n 65 bool
66 default n if !XTENSA_VARIANT_CUSTOM
67 default XTENSA_VARIANT_MMU if XTENSA_VARIANT_CUSTOM
66 68
67config VARIANT_IRQ_SWITCH 69config VARIANT_IRQ_SWITCH
68 def_bool n 70 def_bool n
@@ -102,8 +104,40 @@ config XTENSA_VARIANT_S6000
102 select VARIANT_IRQ_SWITCH 104 select VARIANT_IRQ_SWITCH
103 select ARCH_REQUIRE_GPIOLIB 105 select ARCH_REQUIRE_GPIOLIB
104 select XTENSA_CALIBRATE_CCOUNT 106 select XTENSA_CALIBRATE_CCOUNT
107
108config XTENSA_VARIANT_CUSTOM
109 bool "Custom Xtensa processor configuration"
110 select MAY_HAVE_SMP
111 select HAVE_XTENSA_GPIO32
112 help
113 Select this variant to use a custom Xtensa processor configuration.
114 You will be prompted for a processor variant CORENAME.
105endchoice 115endchoice
106 116
117config XTENSA_VARIANT_CUSTOM_NAME
118 string "Xtensa Processor Custom Core Variant Name"
119 depends on XTENSA_VARIANT_CUSTOM
120 help
121 Provide the name of a custom Xtensa processor variant.
122 This CORENAME selects arch/xtensa/variant/CORENAME.
123 Dont forget you have to select MMU if you have one.
124
125config XTENSA_VARIANT_NAME
126 string
127 default "dc232b" if XTENSA_VARIANT_DC232B
128 default "dc233c" if XTENSA_VARIANT_DC233C
129 default "fsf" if XTENSA_VARIANT_FSF
130 default "s6000" if XTENSA_VARIANT_S6000
131 default XTENSA_VARIANT_CUSTOM_NAME if XTENSA_VARIANT_CUSTOM
132
133config XTENSA_VARIANT_MMU
134 bool "Core variant has a Full MMU (TLB, Pages, Protection, etc)"
135 depends on XTENSA_VARIANT_CUSTOM
136 default y
137 help
138 Build a Conventional Kernel with full MMU support,
139 ie: it supports a TLB with auto-loading, page protection.
140
107config XTENSA_UNALIGNED_USER 141config XTENSA_UNALIGNED_USER
108 bool "Unaligned memory access in use space" 142 bool "Unaligned memory access in use space"
109 help 143 help