Skip to content

Commit

Permalink
Merge pull request #14343 from leandrolanzieri/pr/kconfig/cc2538_base…
Browse files Browse the repository at this point in the history
…d_symbols

boards/cc2538-based: Model features in Kconfig
  • Loading branch information
fjmolinas authored Jun 25, 2020
2 parents 2b1be15 + aa152e3 commit c0d171a
Show file tree
Hide file tree
Showing 12 changed files with 193 additions and 1 deletion.
19 changes: 19 additions & 0 deletions boards/cc2538dk/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "cc2538dk" if BOARD_CC2538DK

config BOARD_CC2538DK
bool
default y
select CPU_MODEL_CC2538NF53
select HAS_PERIPH_ADC
select HAS_PERIPH_I2C
select HAS_PERIPH_SPI
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
select HAS_EMULATOR_RENODE
17 changes: 17 additions & 0 deletions boards/common/remote/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
#

config BOARD_COMMON_REMOTE
bool
default y
select CPU_MODEL_CC2538SF53
select HAS_PERIPH_ADC
select HAS_PERIPH_I2C
select HAS_PERIPH_RTT
select HAS_PERIPH_SPI
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
15 changes: 15 additions & 0 deletions boards/firefly/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "firefly" if BOARD_FIREFLY

config BOARD_FIREFLY
bool
default y
select BOARD_COMMON_REMOTE

source "$(RIOTBOARD)/common/remote/Kconfig"
19 changes: 19 additions & 0 deletions boards/openmote-b/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "openmote-b" if BOARD_OPENMOTE_B

config BOARD_OPENMOTE_B
bool
default y
select CPU_MODEL_CC2538SF53
select HAS_PERIPH_ADC
select HAS_PERIPH_I2C
select HAS_PERIPH_RTT
select HAS_PERIPH_SPI
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
18 changes: 18 additions & 0 deletions boards/openmote-cc2538/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "openmote-cc2538" if BOARD_OPENMOTE_CC2538

config BOARD_OPENMOTE_CC2538
bool
default y
select CPU_MODEL_CC2538SF53
select HAS_PERIPH_ADC
select HAS_PERIPH_I2C
select HAS_PERIPH_SPI
select HAS_PERIPH_TIMER
select HAS_PERIPH_UART
15 changes: 15 additions & 0 deletions boards/remote-pa/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "remote-pa" if BOARD_REMOTE_PA

config BOARD_REMOTE_PA
bool
default y
select BOARD_COMMON_REMOTE

source "$(RIOTBOARD)/common/remote/Kconfig"
15 changes: 15 additions & 0 deletions boards/remote-reva/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "remote-reva" if BOARD_REMOTE_REVA

config BOARD_REMOTE_REVA
bool
default y
select BOARD_COMMON_REMOTE

source "$(RIOTBOARD)/common/remote/Kconfig"
15 changes: 15 additions & 0 deletions boards/remote-revb/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.

config BOARD
default "remote-revb" if BOARD_REMOTE_REVB

config BOARD_REMOTE_REVB
bool
default y
select BOARD_COMMON_REMOTE

source "$(RIOTBOARD)/common/remote/Kconfig"
46 changes: 46 additions & 0 deletions cpu/cc2538/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# Copyright (c) 2020 HAW Hamburg
#
# This file is subject to the terms and conditions of the GNU Lesser
# General Public License v2.1. See the file LICENSE in the top level
# directory for more details.
#

config CPU_FAM_CC2538
bool
select CPU_CORE_CORTEX_M3
select HAS_CPU_CC2538
select HAS_PERIPH_CPUID
select HAS_PERIPH_GPIO
select HAS_PERIPH_GPIO_IRQ
select HAS_PERIPH_HWRNG
select HAS_PERIPH_UART_MODECFG
select HAS_CORTEXM_MPU
select HAS_PUF_SRAM

## CPU Models
config CPU_MODEL_CC2538NF53
bool
select CPU_FAM_CC2538

config CPU_MODEL_CC2538SF53
bool
select CPU_FAM_CC2538

## Definition of specific features
config HAS_CPU_CC2538
bool
help
Indicates that a 'cc2538' cpu is being used.

## Common CPU symbols
config CPU_FAM
default "cc2538" if CPU_FAM_CC2538

config CPU_MODEL
default "cc2538nf53" if CPU_MODEL_CC2538NF53
default "cc2538sf53" if CPU_MODEL_CC2538SF53

config CPU
default "cc2538" if CPU_FAM_CC2538

source "$(RIOTCPU)/cortexm_common/Kconfig"
3 changes: 2 additions & 1 deletion cpu/cc2538/Makefile.features
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
CPU_CORE = cortex-m3
CPU_FAM = cc2538

FEATURES_PROVIDED += periph_cpuid
FEATURES_PROVIDED += periph_gpio periph_gpio_irq
Expand All @@ -8,4 +9,4 @@ FEATURES_PROVIDED += periph_uart_modecfg
FEATURES_PROVIDED += cortexm_mpu
FEATURES_PROVIDED += puf_sram

-include $(RIOTCPU)/cortexm_common/Makefile.features
include $(RIOTCPU)/cortexm_common/Makefile.features
5 changes: 5 additions & 0 deletions kconfigs/Kconfig.features
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,11 @@ config HAS_CPU_CHECK_ADDRESS
help
Indicates that address validity check is supported.

config HAS_EMULATOR_RENODE
bool
help
Indicates that the platform is compatible with the Renode emulator.

config HAS_ETHERNET
bool
help
Expand Down
7 changes: 7 additions & 0 deletions tests/kconfig_features/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -12,18 +12,25 @@ BOARD_WHITELIST += arduino-duemilanove \
cc1312-launchpad \
cc1352-launchpad \
cc1352p-launchpad \
cc2538dk \
cc2650-launchpad \
cc2650stk \
chronos \
derfmega128 \
derfmega256 \
firefly \
hifive1 \
hifive1b \
ikea-tradfri \
mega-xplained \
microduino-corerf \
msb-430 \
msb-430h \
openmote-b \
openmote-cc2538 \
remote-pa \
remote-reva \
remote-revb \
samr21-xpro \
slstk3401a \
slstk3402a \
Expand Down

0 comments on commit c0d171a

Please sign in to comment.