arm: Improve Kconfig option organization
The Cortex-M related Kconfig menus and options no longer show up at the top level when "make ARCH=arm menuconfig" is issued. They show up under the "General Platform Configuration" menu. Change-Id: I6bf012e628212340f5e089d0193a9a71d90c79b9 Signed-off-by: Peter Mitsis <peter.mitsis@windriver.com>
This commit is contained in:
parent
916dcff7a8
commit
36e352dc2f
8 changed files with 96 additions and 111 deletions
|
@ -34,17 +34,37 @@ source "kernel/Kconfig"
|
|||
|
||||
source "misc/Kconfig"
|
||||
|
||||
menu "ARM family options"
|
||||
menu "General Platform Configuration"
|
||||
|
||||
choice
|
||||
prompt "Platform Selection"
|
||||
default PLATFORM_FSL_FRDM_K64F
|
||||
|
||||
config PLATFORM_FSL_FRDM_K64F
|
||||
bool "FSL FRDM K64F"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M4
|
||||
select K20_UART
|
||||
|
||||
config PLATFORM_TI_LM3S6965
|
||||
bool "TI LM3S6965"
|
||||
select CPU_CORTEX_M
|
||||
select CPU_CORTEX_M3
|
||||
select STELLARIS_UART
|
||||
|
||||
endchoice
|
||||
|
||||
config ARM
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
default y
|
||||
help
|
||||
This option signifies the use of an ARM system.
|
||||
|
||||
config ISA_THUMB2
|
||||
bool "Thumb-2 Technology"
|
||||
default y
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
default n
|
||||
help
|
||||
From: http://www.arm.com/products/processors/technologies/instruction-set-architectures.php
|
||||
|
||||
|
@ -69,30 +89,11 @@ config ISA_THUMB2
|
|||
to prolong battery-life or to enrich the product feature set. Thumb-2
|
||||
technology is featured in the processor, and in all ARMv7
|
||||
architecture-based processors.
|
||||
endmenu
|
||||
|
||||
menu "Platform General Configuration"
|
||||
|
||||
choice
|
||||
prompt "Minimum Platform Configuation Selection"
|
||||
default PLATFORM_FSL_FRDM_K64F
|
||||
|
||||
config PLATFORM_FSL_FRDM_K64F
|
||||
bool "Minimum Configuration for FSL FRDM K64F"
|
||||
select CPU_CORTEX_M4
|
||||
select K20_UART
|
||||
|
||||
config PLATFORM_TI_LM3S6965
|
||||
bool "Minimum Configuration for a TI LM3S6965"
|
||||
select CPU_CORTEX_M3
|
||||
select STELLARIS_UART
|
||||
|
||||
endchoice
|
||||
source "arch/arm/core/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
||||
source "arch/arm/core/cortex_m/Kconfig"
|
||||
|
||||
if PLATFORM_TI_LM3S6965
|
||||
source "arch/arm/platforms/ti_lm3s6965/Kconfig"
|
||||
endif
|
||||
|
|
|
@ -72,25 +72,16 @@ CONFIG_PRINTK=y
|
|||
# CONFIG_BOOTLOADER_UNKNOWN is not set
|
||||
|
||||
#
|
||||
# ARM family options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
|
||||
#
|
||||
# Platform General Configuration
|
||||
# General Platform Configuration
|
||||
#
|
||||
# CONFIG_PLATFORM_FSL_FRDM_K64F is not set
|
||||
CONFIG_PLATFORM_TI_LM3S6965=y
|
||||
|
||||
#
|
||||
# ARM Cortex CPU options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
CONFIG_CPU_CORTEX=y
|
||||
CONFIG_CPU_CORTEX_M=y
|
||||
CONFIG_CPU_CORTEX_M3_M4=y
|
||||
CONFIG_CPU_CORTEX_M3=y
|
||||
# CONFIG_CPU_CORTEX_M4 is not set
|
||||
|
||||
#
|
||||
# ARM Cortex-M family options
|
||||
|
|
|
@ -72,24 +72,15 @@ CONFIG_PRINTK=y
|
|||
# CONFIG_BOOTLOADER_UNKNOWN is not set
|
||||
|
||||
#
|
||||
# ARM family options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
|
||||
#
|
||||
# Platform General Configuration
|
||||
# General Platform Configuration
|
||||
#
|
||||
CONFIG_PLATFORM_FSL_FRDM_K64F=y
|
||||
# CONFIG_PLATFORM_TI_LM3S6965 is not set
|
||||
|
||||
#
|
||||
# ARM Cortex CPU options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
CONFIG_CPU_CORTEX=y
|
||||
CONFIG_CPU_CORTEX_M=y
|
||||
CONFIG_CPU_CORTEX_M3_M4=y
|
||||
# CONFIG_CPU_CORTEX_M3 is not set
|
||||
CONFIG_CPU_CORTEX_M4=y
|
||||
|
||||
#
|
||||
|
|
|
@ -51,25 +51,16 @@ CONFIG_PRINTK=y
|
|||
# CONFIG_BOOTLOADER_UNKNOWN is not set
|
||||
|
||||
#
|
||||
# ARM family options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
|
||||
#
|
||||
# Platform General Configuration
|
||||
# General Platform Configuration
|
||||
#
|
||||
# CONFIG_PLATFORM_FSL_FRDM_K64F is not set
|
||||
CONFIG_PLATFORM_TI_LM3S6965=y
|
||||
|
||||
#
|
||||
# ARM Cortex CPU options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
CONFIG_CPU_CORTEX=y
|
||||
CONFIG_CPU_CORTEX_M=y
|
||||
CONFIG_CPU_CORTEX_M3_M4=y
|
||||
CONFIG_CPU_CORTEX_M3=y
|
||||
# CONFIG_CPU_CORTEX_M4 is not set
|
||||
|
||||
#
|
||||
# ARM Cortex-M family options
|
||||
|
|
|
@ -51,24 +51,15 @@ CONFIG_PRINTK=y
|
|||
# CONFIG_BOOTLOADER_UNKNOWN is not set
|
||||
|
||||
#
|
||||
# ARM family options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
|
||||
#
|
||||
# Platform General Configuration
|
||||
# General Platform Configuration
|
||||
#
|
||||
CONFIG_PLATFORM_FSL_FRDM_K64F=y
|
||||
# CONFIG_PLATFORM_TI_LM3S6965 is not set
|
||||
|
||||
#
|
||||
# ARM Cortex CPU options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
CONFIG_CPU_CORTEX=y
|
||||
CONFIG_CPU_CORTEX_M=y
|
||||
CONFIG_CPU_CORTEX_M3_M4=y
|
||||
# CONFIG_CPU_CORTEX_M3 is not set
|
||||
CONFIG_CPU_CORTEX_M4=y
|
||||
|
||||
#
|
||||
|
|
50
arch/arm/core/Kconfig
Normal file
50
arch/arm/core/Kconfig
Normal file
|
@ -0,0 +1,50 @@
|
|||
# Kconfig - ARM core configuration options
|
||||
|
||||
#
|
||||
# Copyright (c) 2015 Wind River Systems, Inc.
|
||||
#
|
||||
# Redistribution and use in source and binary forms, with or without
|
||||
# modification, are permitted provided that the following conditions are met:
|
||||
#
|
||||
# 1) Redistributions of source code must retain the above copyright notice,
|
||||
# this list of conditions and the following disclaimer.
|
||||
#
|
||||
# 2) Redistributions in binary form must reproduce the above copyright notice,
|
||||
# this list of conditions and the following disclaimer in the documentation
|
||||
# and/or other materials provided with the distribution.
|
||||
#
|
||||
# 3) Neither the name of Wind River Systems nor the names of its contributors
|
||||
# may be used to endorse or promote products derived from this software without
|
||||
# specific prior written permission.
|
||||
#
|
||||
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
||||
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
||||
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
||||
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
||||
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
||||
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
||||
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
||||
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
||||
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
||||
# POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
|
||||
config CPU_CORTEX
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
default n
|
||||
help
|
||||
This option signifies the use of a CPU of the Cortex family.
|
||||
|
||||
config CPU_CORTEX_M
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
default n
|
||||
select CPU_CORTEX
|
||||
help
|
||||
This option signifies the use of a CPU of the Cortex-M family.
|
||||
|
||||
if CPU_CORTEX_M
|
||||
source "arch/arm/core/cortex_m/Kconfig"
|
||||
endif
|
|
@ -30,48 +30,27 @@
|
|||
# POSSIBILITY OF SUCH DAMAGE.
|
||||
#
|
||||
|
||||
menu "ARM Cortex CPU options"
|
||||
|
||||
config CPU_CORTEX
|
||||
bool "ARM CORTEX"
|
||||
default n
|
||||
select ARM
|
||||
help
|
||||
This option signifies the use of a CPU of the Cortex family.
|
||||
|
||||
config CPU_CORTEX_M
|
||||
bool "ARM Cortex-M"
|
||||
default n
|
||||
select CPU_CORTEX
|
||||
select ISA_THUMB2
|
||||
help
|
||||
This option signifies the use of a CPU of the Cortex-M family.
|
||||
|
||||
config CPU_CORTEX_M3_M4
|
||||
bool "ARM Cortex-M3 or ARM Cortex-M4"
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
default n
|
||||
select CPU_CORTEX_M
|
||||
select ISA_THUMB2
|
||||
help
|
||||
This option signifies the use of either a Cortex-M3 or Cortex-M4 CPU.
|
||||
|
||||
choice
|
||||
prompt "ARM Cortex M3 or M4 Processor"
|
||||
default CPU_CORTEX_M4
|
||||
|
||||
config CPU_CORTEX_M3
|
||||
bool "ARM Cortex-M3"
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select CPU_CORTEX_M3_M4
|
||||
help
|
||||
This option signifies the use of a Cortex-M3 CPU
|
||||
|
||||
config CPU_CORTEX_M4
|
||||
bool "ARM Cortex-M4"
|
||||
bool
|
||||
# Omit prompt to signify "hidden" option
|
||||
select CPU_CORTEX_M3_M4
|
||||
help
|
||||
This option signifies the use of a Cortex-M4 CPU
|
||||
endchoice
|
||||
|
||||
endmenu
|
||||
|
||||
menu "ARM Cortex-M family options"
|
||||
depends on CPU_CORTEX_M
|
||||
|
|
|
@ -72,24 +72,15 @@ CONFIG_PRINTK=y
|
|||
# CONFIG_BOOTLOADER_UNKNOWN is not set
|
||||
|
||||
#
|
||||
# ARM family options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
|
||||
#
|
||||
# Platform General Configuration
|
||||
# General Platform Configuration
|
||||
#
|
||||
CONFIG_PLATFORM_FSL_FRDM_K64F=y
|
||||
# CONFIG_PLATFORM_TI_LM3S6965 is not set
|
||||
|
||||
#
|
||||
# ARM Cortex CPU options
|
||||
#
|
||||
CONFIG_ARM=y
|
||||
CONFIG_ISA_THUMB2=y
|
||||
CONFIG_CPU_CORTEX=y
|
||||
CONFIG_CPU_CORTEX_M=y
|
||||
CONFIG_CPU_CORTEX_M3_M4=y
|
||||
# CONFIG_CPU_CORTEX_M3 is not set
|
||||
CONFIG_CPU_CORTEX_M4=y
|
||||
|
||||
#
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue