arch: Moved Atmel SAM3 into the SAM SoC family tree.
Moved the Atmel SAM 3 from its own directory into the directory tree laid out in arch/arm/soc/atmel_sam. Origin: Original Jira: ZEP-2067 Change-Id: I26a1a521dd7caa607c3e95a06cd574ee68ca59b8 Signed-off-by: Justin Watson <jwatson5@gmail.com>
This commit is contained in:
parent
e87564bd88
commit
94b44f03e1
13 changed files with 71 additions and 33 deletions
|
@ -4,5 +4,10 @@
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
#
|
#
|
||||||
|
|
||||||
|
config SOC_ATMEL_SAM3
|
||||||
|
bool
|
||||||
|
depends on ARM
|
||||||
|
default n
|
||||||
|
|
||||||
# Select SoC Part No. and configuration options
|
# Select SoC Part No. and configuration options
|
||||||
source "arch/arm/soc/atmel_sam/*/Kconfig.soc"
|
source "arch/arm/soc/atmel_sam/*/Kconfig.soc"
|
||||||
|
|
|
@ -16,7 +16,7 @@ config SOC_FAMILY
|
||||||
default atmel_sam
|
default atmel_sam
|
||||||
|
|
||||||
config WATCHDOG
|
config WATCHDOG
|
||||||
def_bool y
|
def_bool y if !SOC_ATMEL_SAM3X8E
|
||||||
|
|
||||||
endif #SOC_FAMILY_SAM
|
endif #SOC_FAMILY_SAM
|
||||||
|
|
||||||
|
|
|
@ -5,4 +5,4 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
obj-y += $(SOC_SERIES)/
|
obj-y += $(SOC_SERIES)/
|
||||||
obj-y += common/
|
obj-$(CONFIG_ASF) += common/
|
||||||
|
|
|
@ -1,23 +1,27 @@
|
||||||
# Kconfig - Atmel SAM3 family processor configuration options
|
# Kconfig - Atmel SAM3 MCU series configuration options
|
||||||
|
|
||||||
#
|
#
|
||||||
|
# Copyright (c) 2017 Justin Watson
|
||||||
# Copyright (c) 2016 Intel Corporation.
|
# Copyright (c) 2016 Intel Corporation.
|
||||||
# Copyright (c) 2014-2015 Wind River Systems, Inc.
|
# Copyright (c) 2014-2015 Wind River Systems, Inc.
|
||||||
#
|
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
#
|
#
|
||||||
|
|
||||||
if SOC_ATMEL_SAM3
|
if SOC_SERIES_SAM3 || SOC_ATMEL_SAM3X8E
|
||||||
|
|
||||||
config SOC
|
config SOC_SERIES
|
||||||
default atmel_sam3
|
string
|
||||||
|
default sam3
|
||||||
|
|
||||||
|
config SOC_PART_NUMBER
|
||||||
|
string
|
||||||
|
default sam3x8e if SOC_PART_NUMBER_SAM3X8E || SOC_ATMEL_SAM3X8E
|
||||||
|
|
||||||
config NUM_IRQ_PRIO_BITS
|
config NUM_IRQ_PRIO_BITS
|
||||||
int
|
int
|
||||||
default 3
|
default 3
|
||||||
|
|
||||||
#
|
#
|
||||||
# SAM3X8E has total 45 peripherals capable of
|
# SAM3 family has total 45 peripherals capable of
|
||||||
# generating interrupts.
|
# generating interrupts.
|
||||||
#
|
#
|
||||||
config NUM_IRQS
|
config NUM_IRQS
|
||||||
|
@ -38,19 +42,17 @@ config SYS_CLOCK_HW_CYCLES_PER_SEC
|
||||||
# to provide one continuous 96K block.
|
# to provide one continuous 96K block.
|
||||||
#
|
#
|
||||||
config SRAM_SIZE
|
config SRAM_SIZE
|
||||||
default 96 if SOC_ATMEL_SAM3X8E
|
default 96 if SOC_PART_NUMBER_SAM3X8E || SOC_ATMEL_SAM3X8E
|
||||||
|
|
||||||
config SRAM_BASE_ADDRESS
|
config SRAM_BASE_ADDRESS
|
||||||
default 0x20000000 if !SOC_ATMEL_SAM3X8E
|
default 0x20000000 if !SOC_PART_NUMBER_SAM3X8E && !SOC_ATMEL_SAM3X8E
|
||||||
default 0x20070000 if SOC_ATMEL_SAM3X8E
|
default 0x20070000 if SOC_PART_NUMBER_SAM3X8E || SOC_ATMEL_SAM3X8E
|
||||||
|
|
||||||
#
|
#
|
||||||
# Atmel SAM3 family has flash starting @ 0x00080000.
|
# Atmel SAM3 family has flash starting @ 0x00080000.
|
||||||
#
|
#
|
||||||
# SAM3X8E has 512K of flash.
|
|
||||||
#
|
|
||||||
config FLASH_SIZE
|
config FLASH_SIZE
|
||||||
default 512 if SOC_ATMEL_SAM3X8E
|
default 512 if SOC_PART_NUMBER_SAM3X8E || SOC_ATMEL_SAM3X8E
|
||||||
|
|
||||||
config FLASH_BASE_ADDRESS
|
config FLASH_BASE_ADDRESS
|
||||||
default 0x00080000
|
default 0x00080000
|
||||||
|
@ -102,4 +104,4 @@ config I2C_1_IRQ_PRI
|
||||||
|
|
||||||
endif # I2C
|
endif # I2C
|
||||||
|
|
||||||
endif # SOC_ATMEL_SAM3
|
endif # SOC_SERIES_SAM3
|
28
arch/arm/soc/atmel_sam/sam3/Kconfig.series
Normal file
28
arch/arm/soc/atmel_sam/sam3/Kconfig.series
Normal file
|
@ -0,0 +1,28 @@
|
||||||
|
# Kconfig - Atmel SAM3 MCU series
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Justin Watson
|
||||||
|
# Copyright (c) 2016 Intel Corporation.
|
||||||
|
# Copyright (c) 2014-2015 Wind River Systems, Inc.
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
#
|
||||||
|
|
||||||
|
config SOC_SERIES_SAM3
|
||||||
|
bool "Atmel SAM3 MCU"
|
||||||
|
select CPU_CORTEX_M
|
||||||
|
select CPU_CORTEX_M3
|
||||||
|
select SOC_FAMILY_SAM
|
||||||
|
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||||
|
select CPU_HAS_SYSTICK
|
||||||
|
help
|
||||||
|
Enable support for Atmel SAM3 Cortex-M3 microcontrollers.
|
||||||
|
Part No.: SAM3X8E
|
||||||
|
|
||||||
|
config SOC_ATMEL_SAM3X8E
|
||||||
|
bool "Atmel SAM3X8E Processor"
|
||||||
|
select SOC_PART_NUMBER_SAM3X8E
|
||||||
|
select CPU_CORTEX_M
|
||||||
|
select CPU_CORTEX_M3
|
||||||
|
select SOC_FAMILY_SAM
|
||||||
|
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
||||||
|
select CPU_HAS_SYSTICK
|
||||||
|
select SOC_ATMEL_SAM3
|
|
@ -1,18 +1,21 @@
|
||||||
# Kconfig - Atmel SAM3 family processor configuration options
|
# Kconfig - Atmel SAM3 MCU series
|
||||||
|
|
||||||
#
|
#
|
||||||
|
# Copyright (c) 2017 Justin Watson
|
||||||
# Copyright (c) 2016 Intel Corporation.
|
# Copyright (c) 2016 Intel Corporation.
|
||||||
# Copyright (c) 2014-2015 Wind River Systems, Inc.
|
# Copyright (c) 2014-2015 Wind River Systems, Inc.
|
||||||
#
|
#
|
||||||
# SPDX-License-Identifier: Apache-2.0
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
#
|
#
|
||||||
|
|
||||||
config SOC_ATMEL_SAM3
|
choice
|
||||||
bool
|
prompt "Atmel SAM3 MCU Selection"
|
||||||
depends on ARM
|
depends on SOC_SERIES_SAM3
|
||||||
default n
|
|
||||||
|
|
||||||
if ARM && SOC_ATMEL_SAM3
|
config SOC_PART_NUMBER_SAM3X8E
|
||||||
|
bool "SAM3X8E"
|
||||||
|
endchoice
|
||||||
|
|
||||||
|
if SOC_SERIES_SAM3 || SOC_ATMEL_SAM3X8E
|
||||||
|
|
||||||
config SOC_ATMEL_SAM3_EXT_SLCK
|
config SOC_ATMEL_SAM3_EXT_SLCK
|
||||||
bool "Atmel SAM3 to use external crystal oscillator for slow clock"
|
bool "Atmel SAM3 to use external crystal oscillator for slow clock"
|
||||||
|
@ -79,4 +82,4 @@ config SOC_ATMEL_SAM3_WAIT_MODE
|
||||||
to achieve this, make CPU go to Wait mode instead of Sleep
|
to achieve this, make CPU go to Wait mode instead of Sleep
|
||||||
mode while using external crystal oscillator for main clock.
|
mode while using external crystal oscillator for main clock.
|
||||||
|
|
||||||
endif # SOC_ATMEL_SAM3
|
endif # SOC_SERIES_SAM3
|
9
arch/arm/soc/atmel_sam/sam3/Makefile
Normal file
9
arch/arm/soc/atmel_sam/sam3/Makefile
Normal file
|
@ -0,0 +1,9 @@
|
||||||
|
# Makefile - Atmel SAM3 MCU series
|
||||||
|
#
|
||||||
|
# Copyright (c) 2017 Justin Watson
|
||||||
|
# SPDX-License-Identifier: Apache-2.0
|
||||||
|
#
|
||||||
|
|
||||||
|
ZEPHYRINCLUDE += -I$(srctree)/arch/arm/soc/atmel_sam/common
|
||||||
|
|
||||||
|
obj-y += soc.o
|
|
@ -1,8 +0,0 @@
|
||||||
|
|
||||||
config SOC_ATMEL_SAM3X8E
|
|
||||||
bool "Atmel SAM3X8E Processor"
|
|
||||||
select CPU_CORTEX_M
|
|
||||||
select CPU_CORTEX_M3
|
|
||||||
select SOC_ATMEL_SAM3
|
|
||||||
select SYS_POWER_LOW_POWER_STATE_SUPPORTED
|
|
||||||
select CPU_HAS_SYSTICK
|
|
|
@ -1 +0,0 @@
|
||||||
obj-y += soc.o
|
|
Loading…
Add table
Add a link
Reference in a new issue