diff options
author | Max Filippov <jcmvbkbc@gmail.com> | 2014-06-15 23:25:06 -0400 |
---|---|---|
committer | Max Filippov <jcmvbkbc@gmail.com> | 2014-08-14 03:59:08 -0400 |
commit | 420ae9518404c4aeda3abc8e017c8fdcc3a13d6b (patch) | |
tree | 36c40eae5e715e35a8cb77899154d9e1398fa95f /arch/xtensa/Kconfig | |
parent | 64aa90f26c06e1cb2aacfb98a7d0eccfbd6c1a91 (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/Kconfig | 36 |
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 | ||
64 | config MMU | 64 | config 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 | ||
67 | config VARIANT_IRQ_SWITCH | 69 | config 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 | |||
108 | config 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. | ||
105 | endchoice | 115 | endchoice |
106 | 116 | ||
117 | config 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 | |||
125 | config 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 | |||
133 | config 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 | |||
107 | config XTENSA_UNALIGNED_USER | 141 | config XTENSA_UNALIGNED_USER |
108 | bool "Unaligned memory access in use space" | 142 | bool "Unaligned memory access in use space" |
109 | help | 143 | help |