arm: systick: Some SoCs do not have systick

Make the systick feature optional that can be selected by the SoC.

Change-Id: I4a405640b84daecc17fc1882743d3cafb78ff861
Signed-off-by: Anas Nashif <anas.nashif@intel.com>
This commit is contained in:
Anas Nashif 2016-11-26 09:20:15 -05:00 committed by Anas Nashif
commit 92c5f91413
12 changed files with 18 additions and 3 deletions

View file

@ -32,6 +32,13 @@ config CPU_CORTEX_M
help help
This option signifies the use of a CPU of the Cortex-M family. This option signifies the use of a CPU of the Cortex-M family.
config CPU_HAS_SYSTICK
bool
# Omit prompt to signify "hidden" option
default n
help
This option is enabled when the CPU has systick timer implemented.
config CPU_HAS_FPU config CPU_HAS_FPU
# Hidden config selected by CPU family # Hidden config selected by CPU family
bool bool

View file

@ -3,6 +3,5 @@ CONFIG_SYS_CLOCK_HW_CYCLES_PER_SEC=12000000
CONFIG_CONSOLE=y CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y CONFIG_UART_CONSOLE=y
CONFIG_SERIAL=y CONFIG_SERIAL=y
CONFIG_CORTEX_M_SYSTICK=y
CONFIG_FLASH_SIZE=256 CONFIG_FLASH_SIZE=256
CONFIG_SRAM_SIZE=64 CONFIG_SRAM_SIZE=64

View file

@ -22,5 +22,6 @@ config SOC_SERIES_BEETLE
select CPU_CORTEX_M select CPU_CORTEX_M
select CPU_CORTEX_M3 select CPU_CORTEX_M3
select SOC_FAMILY_ARM select SOC_FAMILY_ARM
select CPU_HAS_SYSTICK
help help
Enable support for Beetle MCU Series Enable support for Beetle MCU Series

View file

@ -4,4 +4,5 @@ config SOC_ATMEL_SAM3X8E
select CPU_CORTEX_M select CPU_CORTEX_M
select CPU_CORTEX_M3 select CPU_CORTEX_M3
select SOC_ATMEL_SAM3 select SOC_ATMEL_SAM3
select SYS_POWER_LOW_POWER_STATE_SUPPORTED select SYS_POWER_LOW_POWER_STATE_SUPPORTED
select CPU_HAS_SYSTICK

View file

@ -24,5 +24,6 @@ config SOC_SERIES_NRF51X
select XIP select XIP
select HAS_CMSIS select HAS_CMSIS
select HAS_NORDIC_MDK select HAS_NORDIC_MDK
select CPU_HAS_SYSTICK
help help
Enable support for NRF51 MCU series Enable support for NRF51 MCU series

View file

@ -24,5 +24,6 @@ config SOC_SERIES_NRF52X
select XIP select XIP
select HAS_CMSIS select HAS_CMSIS
select HAS_NORDIC_MDK select HAS_NORDIC_MDK
select CPU_HAS_SYSTICK
help help
Enable support for NRF52 MCU series Enable support for NRF52 MCU series

View file

@ -21,5 +21,6 @@ config SOC_SERIES_KINETIS_K6X
select CPU_CORTEX_M4 select CPU_CORTEX_M4
select SOC_FAMILY_KINETIS select SOC_FAMILY_KINETIS
select SYS_POWER_LOW_POWER_STATE_SUPPORTED select SYS_POWER_LOW_POWER_STATE_SUPPORTED
select CPU_HAS_SYSTICK
help help
Enable support for Kinetis K6x MCU series Enable support for Kinetis K6x MCU series

View file

@ -22,5 +22,6 @@ config SOC_SERIES_STM32F1X
select SOC_FAMILY_STM32 select SOC_FAMILY_STM32
select SYS_POWER_LOW_POWER_STATE_SUPPORTED select SYS_POWER_LOW_POWER_STATE_SUPPORTED
select HAS_STM32CUBE select HAS_STM32CUBE
select CPU_HAS_SYSTICK
help help
Enable support for STM32F1 MCU series Enable support for STM32F1 MCU series

View file

@ -22,5 +22,6 @@ config SOC_SERIES_STM32F4X
select SOC_FAMILY_STM32 select SOC_FAMILY_STM32
select SYS_POWER_LOW_POWER_STATE_SUPPORTED select SYS_POWER_LOW_POWER_STATE_SUPPORTED
select HAS_STM32CUBE select HAS_STM32CUBE
select CPU_HAS_SYSTICK
help help
Enable support for STM32F4 MCU series Enable support for STM32F4 MCU series

View file

@ -3,4 +3,5 @@ config SOC_TI_LM3S6965
bool "TI LM3S6965" bool "TI LM3S6965"
select CPU_CORTEX_M select CPU_CORTEX_M
select CPU_CORTEX_M3 select CPU_CORTEX_M3
select CPU_HAS_SYSTICK

View file

@ -6,5 +6,6 @@ config SOC_SERIES_CC32XX
select CPU_CORTEX_M select CPU_CORTEX_M
select CPU_CORTEX_M4 select CPU_CORTEX_M4
select SOC_FAMILY_TISIMPLELINK select SOC_FAMILY_TISIMPLELINK
select CPU_HAS_SYSTICK
help help
Enable support for TI SimpleLink CC32xx Enable support for TI SimpleLink CC32xx

View file

@ -134,7 +134,7 @@ config ARCV2_TIMER_IRQ_PRIORITY
config CORTEX_M_SYSTICK config CORTEX_M_SYSTICK
bool "Cortex-M SYSTICK timer" bool "Cortex-M SYSTICK timer"
default y default y
depends on CPU_CORTEX_M depends on CPU_HAS_SYSTICK
help help
This module implements a kernel device driver for the Cortex-M processor This module implements a kernel device driver for the Cortex-M processor
SYSTICK timer and provides the standard "system clock driver" interfaces. SYSTICK timer and provides the standard "system clock driver" interfaces.