diff --git a/cpu/efm32_common/Makefile b/cpu/efm32/Makefile similarity index 54% rename from cpu/efm32_common/Makefile rename to cpu/efm32/Makefile index 79b967fc6d80..f70451361e4f 100644 --- a/cpu/efm32_common/Makefile +++ b/cpu/efm32/Makefile @@ -1,7 +1,6 @@ -# define the module that is build -MODULE = efm32_common +MODULE = cpu # add a list of subdirectories, that should also be build -DIRS = periph +DIRS = periph families/$(EFM32_FAMILY) $(RIOTCPU)/cortexm_common include $(RIOTBASE)/Makefile.base diff --git a/cpu/efm32_common/Makefile.dep b/cpu/efm32/Makefile.dep similarity index 50% rename from cpu/efm32_common/Makefile.dep rename to cpu/efm32/Makefile.dep index ac3323068231..9d63028a74eb 100644 --- a/cpu/efm32_common/Makefile.dep +++ b/cpu/efm32/Makefile.dep @@ -1,7 +1,7 @@ ifneq (,$(filter periph_rtc,$(USEMODULE))) - USEMODULE += periph_rtc_series$(CPU_SERIES) + USEMODULE += periph_rtc_series$(EFM32_SERIES) endif ifneq (,$(filter periph_rtt,$(USEMODULE))) - USEMODULE += periph_rtt_series$(CPU_SERIES) + USEMODULE += periph_rtt_series$(EFM32_SERIES) endif diff --git a/cpu/efm32_common/Makefile.features b/cpu/efm32/Makefile.features similarity index 60% rename from cpu/efm32_common/Makefile.features rename to cpu/efm32/Makefile.features index cfebd4882f69..327743ecc71c 100644 --- a/cpu/efm32_common/Makefile.features +++ b/cpu/efm32/Makefile.features @@ -1,3 +1,7 @@ FEATURES_PROVIDED += periph_cpuid FEATURES_PROVIDED += periph_flashpage FEATURES_PROVIDED += periph_pm + +ifeq (1,$(EFM32_TNRG)) + FEATURES_PROVIDED += periph_hwrng +endif diff --git a/cpu/efm32/Makefile.include b/cpu/efm32/Makefile.include new file mode 100644 index 000000000000..d27dc50a2e60 --- /dev/null +++ b/cpu/efm32/Makefile.include @@ -0,0 +1,34 @@ +include $(RIOTCPU)/efm32/efm32-info.mk + +export CPU_ARCH = $(EFM32_ARCHITECTURE) +export CPU_FAM = $(EFM32_FAMILY) + +# the em_device.h header requires a global define with the cpu model +export CFLAGS += -D$(shell echo $(CPU_MODEL) | tr 'a-z' 'A-Z') + +# include Gecko SDK package +USEPKG += gecko_sdk + +# CMSIS-DSP is needed for arm_math.h on Cortex-M0+ architectures +ifeq ($(CPU_ARCH),cortex-m0plus) + USEPKG += cmsis-dsp +endif + +# include common periph module +USEMODULE += periph_common + +# include layered power management +USEMODULE += pm_layered + +# include vendor device headers +INCLUDES += -I$(RIOTCPU)/efm32/families/$(EFM32_FAMILY)/include/vendor + +# include cortexm_common +LINKER_SCRIPT = cortexm.ld + +ROM_START_ADDR = $(EFM32_FLASH_START) +ROM_LEN = $(EFM32_FLASH_SIZE) +RAM_START_ADDR = $(EFM32_SRAM_START) +RAM_LEN = $(EFM32_SRAM_SIZE) + +include $(RIOTMAKE)/arch/cortexm.inc.mk diff --git a/cpu/efm32_common/cpu.c b/cpu/efm32/cpu.c similarity index 99% rename from cpu/efm32_common/cpu.c rename to cpu/efm32/cpu.c index 0421a0bcd22e..02e785ba3117 100644 --- a/cpu/efm32_common/cpu.c +++ b/cpu/efm32/cpu.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @{ * * @file diff --git a/cpu/efm32/doc.txt b/cpu/efm32/doc.txt new file mode 100644 index 000000000000..86b70aa47d02 --- /dev/null +++ b/cpu/efm32/doc.txt @@ -0,0 +1,66 @@ +/** + * @defgroup cpu_efm32 Silicon Labs EFM32/EFR32/EZR32 + * @ingroup cpu + * @brief Implementation of Silicon Labs's EFM32/EFR32/EZR32 MCUs + * + * This module contains all code and definitions for the Silicon Labs + * EFM32/EFR32/EZR32 MCUs. It uses the Gecko SDK (vendor library) for the + * peripheral drivers. + * + * + * Supported Peripherals + * ===================== + * + * The following peripherals are supported (depends on microcontroller): + * - ADC + * - CPUID + * - DAC + * - Flash page + * - GPIO + * - HW RNG + * - I2C + * - Power Management + * - PWM + * - RTC + * - RTT + * - SPI + * - Timer + * - UART (including low-power) + * + * + * Clock Configuration + * =================== + * + * By default the microcontroller will run on the internal RC-oscillator. If + * an external crystal is available, you can configure it to use by setting + * `CLOCK_HF=cmuSelect_HFXO`. The same applies for `CLOCK_LFA`, `CLOCK_LFB` and + * `CLOCK_LFE` using `cmuSelect_LFXO`. + * + * If the internal RC-oscillator is not used, it will be disabled. + * + * Refer to the reference manual of the specific microcontroller for the + * specifics. + * + * + * EMU and CMU Configuration + * ========================= + * + * The Energy Management Unit (EMU) and Clock Management Unit (CMU) are + * initialized using default values provided by the Gecko SDK. You can override + * any of the following defaults to use other values: + * + * - `CMU_HFXOINIT` + * - `CMU_LFXOINIT` + * - `EMU_DCDCINIT` + * - `EMU_EM23INIT` + * - `EMU_EM4INIT` + * + * Refer to the Gecko SDK for more information about these values. + * + * + * Low-power Configuration + * ======================= + * + * The EFM32/EFR32/EZR32 MCUs have support for low-power peripherals. Support + * is enabled by default, but can be disabled by setting LOW_POWER_ENABLED=0. + */ diff --git a/cpu/efm32/efm32-info.mk b/cpu/efm32/efm32-info.mk new file mode 100644 index 000000000000..2d687b0ad3ac --- /dev/null +++ b/cpu/efm32/efm32-info.mk @@ -0,0 +1,27 @@ +# Find the header file that should exist if the CPU is supported. +EFM32_HEADER = $(wildcard $(RIOTCPU)/efm32/families/*/include/vendor/$(CPU_MODEL).h) + +ifeq (,$(EFM32_HEADER)) + $(error Header file for $(CPU_MODEL) is missing) +endif + +# Lookup up CPU information using grep. +EFM32_INFO = $(shell grep $(CPU_MODEL) $(shell dirname $(EFM32_HEADER))/../../cpus.txt) + +ifeq (,$(EFM32_INFO)) + $(error Unable to read CPU information for $(CPU_MODEL)) +endif + +# Export variables to use in this build. +export EFM32_FAMILY = $(word 2, $(EFM32_INFO)) +export EFM32_SERIES = $(word 3, $(EFM32_INFO)) +export EFM32_ARCHITECTURE = $(word 4, $(EFM32_INFO)) + +export EFM32_FLASH_START = $(word 5, $(EFM32_INFO)) +export EFM32_FLASH_SIZE = $(word 6, $(EFM32_INFO)) +export EFM32_SRAM_START = $(word 7, $(EFM32_INFO)) +export EFM32_SRAM_SIZE = $(word 8, $(EFM32_INFO)) + +export EFM32_CRYPTO = $(word 9, $(EFM32_INFO)) +export EFM32_TRNG = $(word 10, $(EFM32_INFO)) +export EFM32_RADIO = $(word 11, $(EFM32_INFO)) diff --git a/cpu/efm32/families/efr32mg1p/Makefile b/cpu/efm32/families/efr32mg1p/Makefile new file mode 100644 index 000000000000..adfea3236056 --- /dev/null +++ b/cpu/efm32/families/efr32mg1p/Makefile @@ -0,0 +1,6 @@ +MODULE = cpu + +# (file triggers compiler bug. see #5775) +SRC_NOLTO += vectors.c + +include $(RIOTBASE)/Makefile.base diff --git a/cpu/efm32/families/efr32mg1p/cpus.txt b/cpu/efm32/families/efr32mg1p/cpus.txt new file mode 100644 index 000000000000..cd0bd8f7e7ae --- /dev/null +++ b/cpu/efm32/families/efr32mg1p/cpus.txt @@ -0,0 +1,27 @@ +# This file is automatically generated, and should not be changed. There is +# propbably little reason to edit this file anyway, since it should already +# contain all information for the EFR32MG1P family of CPUs. + +# The intended usage is to grep for the exact model name, and split by spaces +# to get the required information. + +# CPU - Family - Series - Architecture - Flash base - Flash size - SRAM base - SRAM size - Crypto? - TRNG? - Radio? +efr32mg1p632f256gm32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p132f256gm48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p233f256gm48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p132f256im32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p232f256im32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p133f256gm48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p232f256gm48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p732f256im32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p232f256gj43 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p232f256gm32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p231f256gm48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p732f256gm32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p232f256im48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p132f256im48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p632f256im32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p131f256gm48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p132f256gm32 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p233f256im48 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 +efr32mg1p132f256gj43 efr32mg1p 1 cortex-m4f 0x00000000 0x00040000 0x20000000 0x00007c00 1 0 1 diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p132f256gm32.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p132f256gm32.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p132f256gm32.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p132f256gm32.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p132f256gm48.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p132f256gm48.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p132f256gm48.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p132f256gm48.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_acmp.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_acmp.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_acmp.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_acmp.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_adc.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_adc.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_adc.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_adc.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_af_pins.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_af_pins.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_af_pins.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_af_pins.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_af_ports.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_af_ports.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_af_ports.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_af_ports.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_cmu.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_cmu.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_cmu.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_cmu.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_cryotimer.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_cryotimer.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_cryotimer.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_cryotimer.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_crypto.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_crypto.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_crypto.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_crypto.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_devinfo.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_devinfo.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_devinfo.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_devinfo.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_dma_descriptor.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_dma_descriptor.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_dma_descriptor.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_dma_descriptor.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_dmareq.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_dmareq.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_dmareq.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_dmareq.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_emu.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_emu.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_emu.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_emu.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_fpueh.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_fpueh.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_fpueh.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_fpueh.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_gpcrc.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_gpcrc.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_gpcrc.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_gpcrc.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_gpio.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_gpio.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_gpio.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_gpio.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_gpio_p.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_gpio_p.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_gpio_p.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_gpio_p.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_i2c.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_i2c.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_i2c.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_i2c.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_idac.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_idac.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_idac.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_idac.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_ldma.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_ldma.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_ldma.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_ldma.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_ldma_ch.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_ldma_ch.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_ldma_ch.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_ldma_ch.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_letimer.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_letimer.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_letimer.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_letimer.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_leuart.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_leuart.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_leuart.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_leuart.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_msc.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_msc.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_msc.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_msc.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_pcnt.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_pcnt.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_pcnt.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_pcnt.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_prs.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_prs.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_prs.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_prs.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_prs_ch.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_prs_ch.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_prs_ch.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_prs_ch.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_prs_signals.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_prs_signals.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_prs_signals.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_prs_signals.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_rmu.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rmu.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_rmu.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rmu.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_romtable.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_romtable.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_romtable.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_romtable.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_rtcc.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rtcc.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_rtcc.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rtcc.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_rtcc_cc.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rtcc_cc.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_rtcc_cc.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rtcc_cc.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_rtcc_ret.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rtcc_ret.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_rtcc_ret.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_rtcc_ret.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_timer.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_timer.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_timer.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_timer.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_timer_cc.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_timer_cc.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_timer_cc.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_timer_cc.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_usart.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_usart.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_usart.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_usart.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_wdog.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_wdog.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_wdog.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_wdog.h diff --git a/cpu/efr32mg1p/include/vendor/efr32mg1p_wdog_pch.h b/cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_wdog_pch.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/efr32mg1p_wdog_pch.h rename to cpu/efm32/families/efr32mg1p/include/vendor/efr32mg1p_wdog_pch.h diff --git a/cpu/efr32mg1p/include/vendor/em_device.h b/cpu/efm32/families/efr32mg1p/include/vendor/em_device.h similarity index 65% rename from cpu/efr32mg1p/include/vendor/em_device.h rename to cpu/efm32/families/efr32mg1p/include/vendor/em_device.h index 10546dfa58f5..ab163292cb9c 100644 --- a/cpu/efr32mg1p/include/vendor/em_device.h +++ b/cpu/efm32/families/efr32mg1p/include/vendor/em_device.h @@ -49,12 +49,63 @@ extern "C" { #ifndef EM_DEVICE_H #define EM_DEVICE_H -#if defined(EFR32MG1P132F256GM48) -#include "efr32mg1p132f256gm48.h" +#if defined(EFR32MG1P131F256GM48) +#include "efr32mg1p131f256gm48.h" + +#elif defined(EFR32MG1P132F256GJ43) +#include "efr32mg1p132f256gj43.h" #elif defined(EFR32MG1P132F256GM32) #include "efr32mg1p132f256gm32.h" +#elif defined(EFR32MG1P132F256GM48) +#include "efr32mg1p132f256gm48.h" + +#elif defined(EFR32MG1P132F256IM32) +#include "efr32mg1p132f256im32.h" + +#elif defined(EFR32MG1P132F256IM48) +#include "efr32mg1p132f256im48.h" + +#elif defined(EFR32MG1P133F256GM48) +#include "efr32mg1p133f256gm48.h" + +#elif defined(EFR32MG1P231F256GM48) +#include "efr32mg1p231f256gm48.h" + +#elif defined(EFR32MG1P232F256GJ43) +#include "efr32mg1p232f256gj43.h" + +#elif defined(EFR32MG1P232F256GM32) +#include "efr32mg1p232f256gm32.h" + +#elif defined(EFR32MG1P232F256GM48) +#include "efr32mg1p232f256gm48.h" + +#elif defined(EFR32MG1P232F256IM32) +#include "efr32mg1p232f256im32.h" + +#elif defined(EFR32MG1P232F256IM48) +#include "efr32mg1p232f256im48.h" + +#elif defined(EFR32MG1P233F256GM48) +#include "efr32mg1p233f256gm48.h" + +#elif defined(EFR32MG1P233F256IM48) +#include "efr32mg1p233f256im48.h" + +#elif defined(EFR32MG1P632F256GM32) +#include "efr32mg1p632f256gm32.h" + +#elif defined(EFR32MG1P632F256IM32) +#include "efr32mg1p632f256im32.h" + +#elif defined(EFR32MG1P732F256GM32) +#include "efr32mg1p732f256gm32.h" + +#elif defined(EFR32MG1P732F256IM32) +#include "efr32mg1p732f256im32.h" + #else #error "em_device.h: PART NUMBER undefined" #endif @@ -62,3 +113,4 @@ extern "C" { #ifdef __cplusplus } #endif + diff --git a/cpu/efr32mg1p/include/vendor/system_efr32mg1p.h b/cpu/efm32/families/efr32mg1p/include/vendor/system_efr32mg1p.h similarity index 100% rename from cpu/efr32mg1p/include/vendor/system_efr32mg1p.h rename to cpu/efm32/families/efr32mg1p/include/vendor/system_efr32mg1p.h diff --git a/cpu/efr32mg1p/system_efr32mg1p.c b/cpu/efm32/families/efr32mg1p/system.c similarity index 100% rename from cpu/efr32mg1p/system_efr32mg1p.c rename to cpu/efm32/families/efr32mg1p/system.c diff --git a/cpu/efr32mg1p/vectors.c b/cpu/efm32/families/efr32mg1p/vectors.c similarity index 77% rename from cpu/efr32mg1p/vectors.c rename to cpu/efm32/families/efr32mg1p/vectors.c index 79643a95b5a0..4389a2fcb766 100644 --- a/cpu/efr32mg1p/vectors.c +++ b/cpu/efm32/families/efr32mg1p/vectors.c @@ -19,7 +19,6 @@ * @} */ -#include #include "vectors_cortexm.h" /* define a local dummy handler as it needs to be in the same compilation unit @@ -31,7 +30,13 @@ void dummy_handler(void) /* Silicon Labs specific interrupt vector */ WEAK_DEFAULT void isr_emu(void); +WEAK_DEFAULT void isr_frc_pri(void); WEAK_DEFAULT void isr_wdog0(void); +WEAK_DEFAULT void isr_frc(void); +WEAK_DEFAULT void isr_modem(void); +WEAK_DEFAULT void isr_rac_seq(void); +WEAK_DEFAULT void isr_rac_rsm(void); +WEAK_DEFAULT void isr_bufc(void); WEAK_DEFAULT void isr_ldma(void); WEAK_DEFAULT void isr_gpio_even(void); WEAK_DEFAULT void isr_timer0(void); @@ -51,14 +56,24 @@ WEAK_DEFAULT void isr_cmu(void); WEAK_DEFAULT void isr_msc(void); WEAK_DEFAULT void isr_crypto(void); WEAK_DEFAULT void isr_letimer0(void); +WEAK_DEFAULT void isr_agc(void); +WEAK_DEFAULT void isr_protimer(void); WEAK_DEFAULT void isr_rtcc(void); +WEAK_DEFAULT void isr_synth(void); WEAK_DEFAULT void isr_cryotimer(void); +WEAK_DEFAULT void isr_rfsense(void); WEAK_DEFAULT void isr_fpueh(void); /* interrupt vector table */ ISR_VECTOR(1) const isr_t vector_cpu[CPU_IRQ_NUMOF] = { [ 0] = isr_emu, /* EMU */ + [ 1] = isr_frc_pri, /* FRC_PRI */ [ 2] = isr_wdog0, /* WDOG0 */ + [ 3] = isr_frc, /* FRC */ + [ 4] = isr_modem, /* MODEM */ + [ 5] = isr_rac_seq, /* RAC_SEQ */ + [ 6] = isr_rac_rsm, /* RAC_RSM */ + [ 7] = isr_bufc, /* BUFC */ [ 8] = isr_ldma, /* LDMA */ [ 9] = isr_gpio_even, /* GPIO_EVEN */ [10] = isr_timer0, /* TIMER0 */ @@ -78,7 +93,11 @@ ISR_VECTOR(1) const isr_t vector_cpu[CPU_IRQ_NUMOF] = { [24] = isr_msc, /* MSC */ [25] = isr_crypto, /* CRYPTO */ [26] = isr_letimer0, /* LETIMER0 */ + [27] = isr_agc, /* AGC */ + [28] = isr_protimer, /* PROTIMER */ [29] = isr_rtcc, /* RTCC */ + [30] = isr_synth, /* SYNTH */ [31] = isr_cryotimer, /* CRYOTIMER */ + [32] = isr_rfsense, /* RFSENSE */ [33] = isr_fpueh, /* FPUEH */ }; diff --git a/cpu/efr32mg1p/include/cpu_conf.h b/cpu/efm32/include/cpu_conf.h similarity index 76% rename from cpu/efr32mg1p/include/cpu_conf.h rename to cpu/efm32/include/cpu_conf.h index c28991616935..1c8d4748e92a 100644 --- a/cpu/efr32mg1p/include/cpu_conf.h +++ b/cpu/efm32/include/cpu_conf.h @@ -7,9 +7,9 @@ */ /** - * @defgroup cpu_efr32mg1p Silicon Labs EFR32MG1P + * @defgroup cpu_efm32 Silicon Labs EFM32/EFR32/EZR32 * @ingroup cpu - * @brief Support for the Silicon Labs EFR32MG1P CPU + * @brief Support for Silicon Labs EFM32/EFR32/EZR32 CPUs * @{ * * @file @@ -31,12 +31,12 @@ extern "C" { #endif /** - * @brief ARM Cortex-M4 specific CPU configuration + * @brief ARM Cortex-M specific CPU configuration * @{ */ #define CPU_DEFAULT_IRQ_PRIO (1U) -#define CPU_IRQ_NUMOF (FPUEH_IRQn + 1) -#define CPU_FLASH_BASE FLASH_BASE +#define CPU_IRQ_NUMOF (EXT_IRQ_COUNT + 1) +#define CPU_FLASH_BASE (FLASH_BASE) /** @} */ /** diff --git a/cpu/efm32_common/include/periph_cpu.h b/cpu/efm32/include/periph_cpu.h similarity index 99% rename from cpu/efm32_common/include/periph_cpu.h rename to cpu/efm32/include/periph_cpu.h index dbfed9e58d62..18c9d25b4894 100644 --- a/cpu/efm32_common/include/periph_cpu.h +++ b/cpu/efm32/include/periph_cpu.h @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @{ * * @file diff --git a/cpu/efr32mg1p/periph/Makefile b/cpu/efm32/periph/Makefile similarity index 100% rename from cpu/efr32mg1p/periph/Makefile rename to cpu/efm32/periph/Makefile diff --git a/cpu/efm32_common/periph/adc.c b/cpu/efm32/periph/adc.c similarity index 98% rename from cpu/efm32_common/periph/adc.c rename to cpu/efm32/periph/adc.c index b8cf8280f569..f98ffac66148 100644 --- a/cpu/efm32_common/periph/adc.c +++ b/cpu/efm32/periph/adc.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_adc * @{ * diff --git a/cpu/efm32_common/periph/cpuid.c b/cpu/efm32/periph/cpuid.c similarity index 94% rename from cpu/efm32_common/periph/cpuid.c rename to cpu/efm32/periph/cpuid.c index 8a9c81fcfb49..05861a741022 100644 --- a/cpu/efm32_common/periph/cpuid.c +++ b/cpu/efm32/periph/cpuid.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_cpuid * @{ * diff --git a/cpu/efm32_common/periph/dac.c b/cpu/efm32/periph/dac.c similarity index 98% rename from cpu/efm32_common/periph/dac.c rename to cpu/efm32/periph/dac.c index ba7da549fe9d..cd7c7b73010c 100644 --- a/cpu/efm32_common/periph/dac.c +++ b/cpu/efm32/periph/dac.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_dac * @{ * diff --git a/cpu/efm32_common/periph/flashpage.c b/cpu/efm32/periph/flashpage.c similarity index 96% rename from cpu/efm32_common/periph/flashpage.c rename to cpu/efm32/periph/flashpage.c index 58ced472b939..3209537f670d 100644 --- a/cpu/efm32_common/periph/flashpage.c +++ b/cpu/efm32/periph/flashpage.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_flashpage * @{ * diff --git a/cpu/efm32_common/periph/gpio.c b/cpu/efm32/periph/gpio.c similarity index 99% rename from cpu/efm32_common/periph/gpio.c rename to cpu/efm32/periph/gpio.c index db8eb86fec01..0746bbb522af 100644 --- a/cpu/efm32_common/periph/gpio.c +++ b/cpu/efm32/periph/gpio.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_gpio * @{ * diff --git a/cpu/efm32_common/periph/hwrng.c b/cpu/efm32/periph/hwrng.c similarity index 97% rename from cpu/efm32_common/periph/hwrng.c rename to cpu/efm32/periph/hwrng.c index 1d341096420b..aeb450d2bde2 100644 --- a/cpu/efm32_common/periph/hwrng.c +++ b/cpu/efm32/periph/hwrng.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_hwrng * @{ * diff --git a/cpu/efm32_common/periph/i2c.c b/cpu/efm32/periph/i2c.c similarity index 99% rename from cpu/efm32_common/periph/i2c.c rename to cpu/efm32/periph/i2c.c index d3a085b662e8..b1a5970fd696 100644 --- a/cpu/efm32_common/periph/i2c.c +++ b/cpu/efm32/periph/i2c.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_i2c * @{ * diff --git a/cpu/efm32_common/periph/pm.c b/cpu/efm32/periph/pm.c similarity index 96% rename from cpu/efm32_common/periph/pm.c rename to cpu/efm32/periph/pm.c index 2cdac1f9a8b9..f88c3ffd9719 100644 --- a/cpu/efm32_common/periph/pm.c +++ b/cpu/efm32/periph/pm.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_pm * @{ * diff --git a/cpu/efm32_common/periph/pwm.c b/cpu/efm32/periph/pwm.c similarity index 98% rename from cpu/efm32_common/periph/pwm.c rename to cpu/efm32/periph/pwm.c index 8b5ad350f3c6..80679e755e3f 100644 --- a/cpu/efm32_common/periph/pwm.c +++ b/cpu/efm32/periph/pwm.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_pwm * @{ * diff --git a/cpu/efm32_common/periph/rtc_series0.c b/cpu/efm32/periph/rtc_series0.c similarity index 99% rename from cpu/efm32_common/periph/rtc_series0.c rename to cpu/efm32/periph/rtc_series0.c index 5edf2dd1473f..ef75a7e67574 100644 --- a/cpu/efm32_common/periph/rtc_series0.c +++ b/cpu/efm32/periph/rtc_series0.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_rtc * @{ * diff --git a/cpu/efm32_common/periph/rtc_series1.c b/cpu/efm32/periph/rtc_series1.c similarity index 99% rename from cpu/efm32_common/periph/rtc_series1.c rename to cpu/efm32/periph/rtc_series1.c index 7bb817d1abbe..d4938283ac3a 100644 --- a/cpu/efm32_common/periph/rtc_series1.c +++ b/cpu/efm32/periph/rtc_series1.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_rtc * @{ * diff --git a/cpu/efm32_common/periph/rtt_series0.c b/cpu/efm32/periph/rtt_series0.c similarity index 98% rename from cpu/efm32_common/periph/rtt_series0.c rename to cpu/efm32/periph/rtt_series0.c index c75951e31584..86b8846169f0 100644 --- a/cpu/efm32_common/periph/rtt_series0.c +++ b/cpu/efm32/periph/rtt_series0.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_rtt * @{ * diff --git a/cpu/efm32_common/periph/rtt_series1.c b/cpu/efm32/periph/rtt_series1.c similarity index 99% rename from cpu/efm32_common/periph/rtt_series1.c rename to cpu/efm32/periph/rtt_series1.c index f8fce5eddcee..c67e60b2cf26 100644 --- a/cpu/efm32_common/periph/rtt_series1.c +++ b/cpu/efm32/periph/rtt_series1.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_rtt * @{ * diff --git a/cpu/efm32_common/periph/spi.c b/cpu/efm32/periph/spi.c similarity index 98% rename from cpu/efm32_common/periph/spi.c rename to cpu/efm32/periph/spi.c index d593566bd012..f0b75f9a1772 100644 --- a/cpu/efm32_common/periph/spi.c +++ b/cpu/efm32/periph/spi.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_spi * @{ * diff --git a/cpu/efm32_common/periph/timer.c b/cpu/efm32/periph/timer.c similarity index 99% rename from cpu/efm32_common/periph/timer.c rename to cpu/efm32/periph/timer.c index 2891ce5567e7..2305eb5c3ebf 100644 --- a/cpu/efm32_common/periph/timer.c +++ b/cpu/efm32/periph/timer.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_timer * @{ * diff --git a/cpu/efm32_common/periph/uart.c b/cpu/efm32/periph/uart.c similarity index 99% rename from cpu/efm32_common/periph/uart.c rename to cpu/efm32/periph/uart.c index f7ae6d615588..adaadf2142b2 100644 --- a/cpu/efm32_common/periph/uart.c +++ b/cpu/efm32/periph/uart.c @@ -7,7 +7,7 @@ */ /** - * @ingroup cpu_efm32_common + * @ingroup cpu_efm32 * @ingroup drivers_periph_uart * @{ * diff --git a/cpu/efm32_common/Makefile.include b/cpu/efm32_common/Makefile.include deleted file mode 100644 index 5b233183a535..000000000000 --- a/cpu/efm32_common/Makefile.include +++ /dev/null @@ -1,20 +0,0 @@ -# the em_device.h header requires a global define with the cpu model -export CFLAGS += -D$(shell echo $(CPU_MODEL) | tr 'a-z' 'A-Z') - -# include emlib package -USEPKG += emlib - -# include efm32 common -USEMODULE += efm32_common - -# include common periph module -USEMODULE += periph_common - -# include efm32 common periph drivers -USEMODULE += efm32_common_periph - -# include layered power management -USEMODULE += pm_layered - -# export the common include directory -export INCLUDES += -I$(RIOTCPU)/efm32_common/include diff --git a/cpu/efm32_common/doc.txt b/cpu/efm32_common/doc.txt deleted file mode 100644 index ac02dada51ce..000000000000 --- a/cpu/efm32_common/doc.txt +++ /dev/null @@ -1,5 +0,0 @@ -/** - * @defgroup cpu_efm32_common Silicon Labs Exx32 MCU - * @ingroup cpu - * @brief Common implementations for the Exx32 family of CPUs - */ diff --git a/cpu/efm32_common/periph/Makefile b/cpu/efm32_common/periph/Makefile deleted file mode 100644 index eb60ec07dbaa..000000000000 --- a/cpu/efm32_common/periph/Makefile +++ /dev/null @@ -1,3 +0,0 @@ -MODULE = efm32_common_periph - -include $(RIOTMAKE)/periph.mk diff --git a/cpu/efr32mg1p/Makefile b/cpu/efr32mg1p/Makefile deleted file mode 100644 index 22730f62e175..000000000000 --- a/cpu/efr32mg1p/Makefile +++ /dev/null @@ -1,10 +0,0 @@ -# define the module that is build -MODULE = cpu - -# add a list of subdirectories, that should also be build -DIRS = periph $(RIOTCPU)/cortexm_common $(RIOTCPU)/efm32_common - -# (file triggers compiler bug. see #5775) -SRC_NOLTO += vectors.c - -include $(RIOTBASE)/Makefile.base diff --git a/cpu/efr32mg1p/Makefile.dep b/cpu/efr32mg1p/Makefile.dep deleted file mode 100644 index 1515a5eab102..000000000000 --- a/cpu/efr32mg1p/Makefile.dep +++ /dev/null @@ -1 +0,0 @@ -include $(RIOTCPU)/efm32_common/Makefile.dep diff --git a/cpu/efr32mg1p/Makefile.features b/cpu/efr32mg1p/Makefile.features deleted file mode 100644 index 389068b88106..000000000000 --- a/cpu/efr32mg1p/Makefile.features +++ /dev/null @@ -1,2 +0,0 @@ - -include $(RIOTCPU)/efm32_common/Makefile.features diff --git a/cpu/efr32mg1p/Makefile.include b/cpu/efr32mg1p/Makefile.include deleted file mode 100644 index d2d38383ca46..000000000000 --- a/cpu/efr32mg1p/Makefile.include +++ /dev/null @@ -1,12 +0,0 @@ -export CPU_ARCH = cortex-m4 -export CPU_FAM = efr32mg1p -export CPU_SERIES = 1 - -# include vendor device headers -export INCLUDES += -I$(RIOTCPU)/efr32mg1p/include/vendor - -# include cortexm_common -include $(RIOTMAKE)/arch/cortexm.inc.mk - -# include efm32_common -include $(RIOTCPU)/efm32_common/Makefile.include diff --git a/cpu/efr32mg1p/doc.txt b/cpu/efr32mg1p/doc.txt deleted file mode 100644 index fcae1dfbfbf8..000000000000 --- a/cpu/efr32mg1p/doc.txt +++ /dev/null @@ -1,10 +0,0 @@ -/** - * @defgroup cpu_efr32mg1p Silicon Labs EFR32MG1P - * @ingroup cpu - * @brief Implementation of Silicon Labs's EFR32MG1P MCU - */ - -/** - * @defgroup cpu_efr32mg1p_definitions Silicon Labs EFR32MG1P definitions - * @ingroup cpu_efr32mg1p - */ diff --git a/cpu/efr32mg1p/ldscripts/efr32mg1p132f256gm32.ld b/cpu/efr32mg1p/ldscripts/efr32mg1p132f256gm32.ld deleted file mode 100644 index 944d3a96184c..000000000000 --- a/cpu/efr32mg1p/ldscripts/efr32mg1p132f256gm32.ld +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (C) 2015-2017 Freie Universität Berlin - * - * 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. - */ - -/** - * @addtogroup cpu_efr32mg1p - * @{ - * - * @file - * @brief Memory definitions for the EFR32MG1P132F256GM32 CPU - * - * @author Hauke Petersen - * @author Bas Stottelaar - * - * @} - */ - -MEMORY -{ - rom (rx) : ORIGIN = 0x00000000, LENGTH = 262144 - ram (rwx) : ORIGIN = 0x20000000, LENGTH = 31744 -} - -INCLUDE cortexm_base.ld diff --git a/cpu/efr32mg1p/ldscripts/efr32mg1p132f256gm48.ld b/cpu/efr32mg1p/ldscripts/efr32mg1p132f256gm48.ld deleted file mode 100644 index 99b6ee64d85c..000000000000 --- a/cpu/efr32mg1p/ldscripts/efr32mg1p132f256gm48.ld +++ /dev/null @@ -1,28 +0,0 @@ -/* - * Copyright (C) 2015-2017 Freie Universität Berlin - * - * 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. - */ - -/** - * @addtogroup cpu_efr32mg1p - * @{ - * - * @file - * @brief Memory definitions for the EFR32MG1P132F256GM48 CPU - * - * @author Hauke Petersen - * @author Bas Stottelaar - * - * @} - */ - -MEMORY -{ - rom (rx) : ORIGIN = 0x00000000, LENGTH = 262144 - ram (rwx) : ORIGIN = 0x20000000, LENGTH = 31744 -} - -INCLUDE cortexm_base.ld