Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

soc: atmel: sam/sam0: Add platform specific initialization #61005

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 5 additions & 4 deletions boards/arm/atsamd20_xpro/atsamd20_xpro_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,13 @@

CONFIG_SOC_SERIES_SAMD20=y
CONFIG_SOC_PART_NUMBER_SAMD20J18=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K_AS_MAIN=y
CONFIG_BOARD_ATSAMD20_XPRO=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_GPIO=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K_AS_MAIN=y
10 changes: 6 additions & 4 deletions boards/arm/atsamd21_xpro/atsamd21_xpro_defconfig
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
# Copyright (c) 2018 Bryan O'Donoghue
# SPDX-License-Identifier: Apache-2.0

CONFIG_SOC_SERIES_SAMD21=y
CONFIG_SOC_PART_NUMBER_SAMD21J18A=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K_AS_MAIN=y
CONFIG_BOARD_ATSAMD21_XPRO=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_GPIO=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K_AS_MAIN=y
15 changes: 8 additions & 7 deletions boards/arm/atsame54_xpro/atsame54_xpro_defconfig
Original file line number Diff line number Diff line change
@@ -1,17 +1,18 @@
# Copyright (c) 2019 Benjamin Valentin
# SPDX-License-Identifier: Apache-2.0

CONFIG_SOC_SERIES_SAME54=y
CONFIG_SOC_PART_NUMBER_SAME54P20A=y
CONFIG_SOC_ATMEL_SAMD5X_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD5X_XOSC32K_AS_MAIN=y
CONFIG_BOARD_ATSAME54_XPRO=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_ARM_MPU=y
CONFIG_SOC_ATMEL_SAMD5X_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD5X_XOSC32K_AS_MAIN=y
CONFIG_HW_STACK_PROTECTION=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_GPIO=y

# Enable HW stack protection
CONFIG_HW_STACK_PROTECTION=y
10 changes: 6 additions & 4 deletions boards/arm/atsaml21_xpro/atsaml21_xpro_defconfig
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
# Copyright (c) 2021 Argentum Systems Ltd.
# SPDX-License-Identifier: Apache-2.0

CONFIG_SOC_SERIES_SAML21=y
CONFIG_SOC_PART_NUMBER_SAML21J18B=y
CONFIG_SOC_ATMEL_SAML_XOSC32K=y
CONFIG_SOC_ATMEL_SAML_XOSC32K_AS_MAIN=y
CONFIG_BOARD_ATSAML21_XPRO=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_GPIO=y
CONFIG_SOC_ATMEL_SAML_XOSC32K=y
CONFIG_SOC_ATMEL_SAML_XOSC32K_AS_MAIN=y
12 changes: 7 additions & 5 deletions boards/arm/atsamr21_xpro/atsamr21_xpro_defconfig
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
# Copyright (c) 2019 Gerson Fernando Budke
# Copyright (c) 2019 Benjamin Valentin
# Copyright (c) 2019 Gerson Fernando Budke
# SPDX-License-Identifier: Apache-2.0

CONFIG_SOC_SERIES_SAMR21=y
CONFIG_SOC_PART_NUMBER_SAMR21G18A=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K_AS_MAIN=y
CONFIG_BOARD_ATSAMR21_XPRO=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_GPIO=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K=y
CONFIG_SOC_ATMEL_SAMD_XOSC32K_AS_MAIN=y
10 changes: 6 additions & 4 deletions boards/arm/atsamr34_xpro/atsamr34_xpro_defconfig
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
# Copyright (c) 2021 Argentum Systems Ltd.
# SPDX-License-Identifier: Apache-2.0

CONFIG_SOC_SERIES_SAMR34=y
CONFIG_SOC_PART_NUMBER_SAMR34J18B=y
CONFIG_SOC_ATMEL_SAML_XOSC32K=y
CONFIG_SOC_ATMEL_SAML_XOSC32K_AS_MAIN=y
CONFIG_BOARD_ATSAMR34_XPRO=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_UART_INTERRUPT_DRIVEN=y
CONFIG_GPIO=y
CONFIG_SOC_ATMEL_SAML_XOSC32K=y
CONFIG_SOC_ATMEL_SAML_XOSC32K_AS_MAIN=y
16 changes: 8 additions & 8 deletions boards/arm/sam4e_xpro/sam4e_xpro_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,15 @@

CONFIG_SOC_SERIES_SAM4E=y
CONFIG_SOC_PART_NUMBER_SAM4E16E=y
CONFIG_ARM_MPU=y
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_SOC_ATMEL_SAM4E_EXT_MAINCK=y
CONFIG_BOARD_SAM4E_XPRO=y
CONFIG_BUILD_OUTPUT_HEX=y
CONFIG_SOC_ATMEL_SAM4E_EXT_MAINCK=y
CONFIG_GPIO=y
CONFIG_WDT_DISABLE_AT_BOOT=y

# Enable HW stack protection
CONFIG_ARM_MPU=y
CONFIG_HW_STACK_PROTECTION=y
CONFIG_WDT_DISABLE_AT_BOOT=y

CONFIG_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
12 changes: 6 additions & 6 deletions boards/arm/sam4l_ek/sam4l_ek_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,12 +2,12 @@

CONFIG_SOC_SERIES_SAM4L=y
CONFIG_SOC_PART_NUMBER_SAM4LC4C=y
CONFIG_ARM_MPU=y
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_BOARD_SAM4L_EK=y
CONFIG_GPIO=y

# Enable HW stack protection
CONFIG_ARM_MPU=y
CONFIG_HW_STACK_PROTECTION=y

CONFIG_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
18 changes: 8 additions & 10 deletions boards/arm/sam4s_xplained/sam4s_xplained_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -2,17 +2,15 @@

CONFIG_SOC_SERIES_SAM4S=y
CONFIG_SOC_PART_NUMBER_SAM4S16C=y
CONFIG_ARM_MPU=y
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_BOARD_SAM4S_XPLAINED=y
CONFIG_SOC_ATMEL_SAM4S_EXT_MAINCK=y
CONFIG_GPIO=y
CONFIG_BOARD_SAM4S_XPLAINED=y

CONFIG_ARM_MPU=y
CONFIG_HW_STACK_PROTECTION=y
CONFIG_WDT_DISABLE_AT_BOOT=y

# Enable SMC SRAM
CONFIG_CONSOLE=y
CONFIG_GPIO=y
CONFIG_MEMC=y

# Enable HW stack protection
CONFIG_HW_STACK_PROTECTION=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
17 changes: 9 additions & 8 deletions boards/arm/sam_e70_xplained/sam_e70_xplained_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,16 @@ CONFIG_SOC_PART_NUMBER_SAME70Q21=y
CONFIG_SOC_ATMEL_SAME70_EXT_MAINCK=y
CONFIG_SOC_ATMEL_SAME70_PLLA_MULA=24
CONFIG_SOC_ATMEL_SAME70_PLLA_DIVA=1
CONFIG_ARM_MPU=y
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_USART_SAM=y
CONFIG_GPIO=y
CONFIG_BOARD_SAM_E70_XPLAINED=y
CONFIG_WDT_DISABLE_AT_BOOT=y
CONFIG_BUILD_OUTPUT_HEX=y

# Enable HW stack protection
CONFIG_ARM_MPU=y
CONFIG_CACHE_MANAGEMENT=y
CONFIG_HW_STACK_PROTECTION=y
CONFIG_WDT_DISABLE_AT_BOOT=y

CONFIG_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_USART_SAM=y
13 changes: 9 additions & 4 deletions boards/arm/sam_e70_xplained/sam_e70b_xplained_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,16 @@ CONFIG_SOC_PART_NUMBER_SAME70Q21B=y
CONFIG_SOC_ATMEL_SAME70_EXT_MAINCK=y
CONFIG_SOC_ATMEL_SAME70_PLLA_MULA=24
CONFIG_SOC_ATMEL_SAME70_PLLA_DIVA=1
CONFIG_BOARD_SAM_E70_XPLAINED=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_ARM_MPU=y
CONFIG_CACHE_MANAGEMENT=y
CONFIG_HW_STACK_PROTECTION=y
CONFIG_WDT_DISABLE_AT_BOOT=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_USART_SAM=y
CONFIG_BOARD_SAM_E70_XPLAINED=y
CONFIG_WDT_DISABLE_AT_BOOT=y
CONFIG_BUILD_OUTPUT_HEX=y
17 changes: 9 additions & 8 deletions boards/arm/sam_v71_xult/sam_v71_xult_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -5,15 +5,16 @@ CONFIG_SOC_PART_NUMBER_SAMV71Q21=y
CONFIG_SOC_ATMEL_SAMV71_EXT_MAINCK=y
CONFIG_SOC_ATMEL_SAMV71_PLLA_MULA=24
CONFIG_SOC_ATMEL_SAMV71_PLLA_DIVA=1
CONFIG_ARM_MPU=y
CONFIG_GPIO=y
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_SERIAL=y
CONFIG_USART_SAM=y
CONFIG_BOARD_SAM_V71_XULT=y
CONFIG_WDT_DISABLE_AT_BOOT=y
CONFIG_BUILD_OUTPUT_HEX=y

# Enable HW stack protection
CONFIG_ARM_MPU=y
CONFIG_CACHE_MANAGEMENT=y
CONFIG_HW_STACK_PROTECTION=y
CONFIG_WDT_DISABLE_AT_BOOT=y

CONFIG_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_USART_SAM=y
14 changes: 9 additions & 5 deletions boards/arm/sam_v71_xult/sam_v71b_xult_defconfig
Original file line number Diff line number Diff line change
Expand Up @@ -5,12 +5,16 @@ CONFIG_SOC_PART_NUMBER_SAMV71Q21B=y
CONFIG_SOC_ATMEL_SAMV71_EXT_MAINCK=y
CONFIG_SOC_ATMEL_SAMV71_PLLA_MULA=24
CONFIG_SOC_ATMEL_SAMV71_PLLA_DIVA=1
CONFIG_BOARD_SAM_V71_XULT=y
CONFIG_BUILD_OUTPUT_HEX=y

CONFIG_ARM_MPU=y
CONFIG_GPIO=y
CONFIG_CACHE_MANAGEMENT=y
CONFIG_HW_STACK_PROTECTION=y
CONFIG_WDT_DISABLE_AT_BOOT=y

CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
CONFIG_GPIO=y
CONFIG_SERIAL=y
CONFIG_UART_CONSOLE=y
CONFIG_USART_SAM=y
CONFIG_BOARD_SAM_V71_XULT=y
CONFIG_WDT_DISABLE_AT_BOOT=y
CONFIG_BUILD_OUTPUT_HEX=y
10 changes: 6 additions & 4 deletions soc/arm/atmel_sam/sam3x/Kconfig.series
Original file line number Diff line number Diff line change
@@ -1,17 +1,19 @@
# Atmel SAM3X MCU series

# Copyright (c) 2017 Justin Watson
# Copyright (c) 2016 Intel Corporation.
# Copyright (c) 2014-2015 Wind River Systems, Inc.
# Copyright (c) 2016 Intel Corporation.
# Copyright (c) 2017 Justin Watson
# Copyright (c) 2023 Gerson Fernando Budke <nandojve@gmail.com>
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_SAM3X
bool "Atmel SAM3X MCU"
select ARM
select CPU_CORTEX_M3
select SOC_FAMILY_SAM
select CPU_HAS_ARM_MPU
select CPU_CORTEX_M_HAS_DWT
select CPU_HAS_ARM_MPU
select SOC_FAMILY_SAM
select PLATFORM_SPECIFIC_INIT
select ASF
help
Enable support for Atmel SAM3X Cortex-M3 microcontrollers.
Expand Down
17 changes: 3 additions & 14 deletions soc/arm/atmel_sam/sam3x/soc.c
Original file line number Diff line number Diff line change
@@ -1,6 +1,7 @@
/*
* Copyright (c) 2016 Intel Corporation.
* Copyright (c) 2013-2015 Wind River Systems, Inc.
* Copyright (c) 2016 Intel Corporation.
* Copyright (c) 2023 Gerson Fernando Budke <nandojve@gmail.com>
*
* SPDX-License-Identifier: Apache-2.0
*/
Expand Down Expand Up @@ -192,15 +193,7 @@ static ALWAYS_INLINE void clock_init(void)
}
}

/**
* @brief Perform basic hardware initialization at boot.
*
* This has to be run at the very beginning thus the init priority is set at
* 0 (zero).
*
* @return 0
*/
static int atmel_sam3x_init(void)
void z_arm_platform_init(void)
nandojve marked this conversation as resolved.
Show resolved Hide resolved
{
/*
* Set FWS (Flash Wait State) value before increasing Master Clock
Expand All @@ -213,8 +206,4 @@ static int atmel_sam3x_init(void)

/* Setup system clocks */
clock_init();

return 0;
}

SYS_INIT(atmel_sam3x_init, PRE_KERNEL_1, 0);
3 changes: 2 additions & 1 deletion soc/arm/atmel_sam/sam4e/Kconfig.series
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@

# Copyright (c) 2017 Justin Watson
# Copyright (c) 2018 Vincent van der Locht
# Copyright (c) 2019-2020 Gerson Fernando Budke <nandojve@gmail.com>
# Copyright (c) 2019-2023 Gerson Fernando Budke <nandojve@gmail.com>
# SPDX-License-Identifier: Apache-2.0

config SOC_SERIES_SAM4E
Expand All @@ -13,6 +13,7 @@ config SOC_SERIES_SAM4E
select CPU_HAS_ARM_MPU
select CPU_HAS_FPU
select SOC_FAMILY_SAM
select PLATFORM_SPECIFIC_INIT
select ASF
help
Enable support for Atmel SAM4E Cortex-M4 microcontrollers.
Expand Down
Loading
Loading