-
Notifications
You must be signed in to change notification settings - Fork 6.5k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
boards: arm: add support for the Actinius Icarus SoM DK w/ helper lib
This adds support for the nRF9160-based Icarus SoM DK (development kit) from Actinius and a common library for board init code that is common to multiple boards from Actinius. Signed-off-by: Alex Tsamakos <[email protected]>
- Loading branch information
Showing
22 changed files
with
1,017 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,8 @@ | ||
# | ||
# Copyright (c) 2022 Actinius | ||
# | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
zephyr_library() | ||
|
||
add_subdirectory(${ZEPHYR_BASE}/boards/common/actinius actinius_common) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,14 @@ | ||
# Actinius Icarus SoM DK board configuration | ||
|
||
# Copyright (c) 2022 Actinius | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
if SOC_NRF9160_SICA | ||
|
||
config BOARD_ACTINIUS_ICARUS_SOM_DK | ||
bool "Actinius Icarus SoM DK" | ||
|
||
config BOARD_ACTINIUS_ICARUS_SOM_DK_NS | ||
bool "Actinius Icarus SoM DK Non-Secure" | ||
|
||
endif # SOC_NRF9160_SICA |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,40 @@ | ||
# Actinius Icarus SoM DK board configuration | ||
|
||
# Copyright (c) 2022 Actinius | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
if BOARD_ACTINIUS_ICARUS_SOM_DK || BOARD_ACTINIUS_ICARUS_SOM_DK_NS | ||
|
||
config BOARD | ||
default "actinius_icarus_som_dk" | ||
|
||
source "boards/common/actinius/Kconfig" | ||
|
||
# For the secure version of the board the firmware is linked at the beginning | ||
# of the flash, or into the code-partition defined in DT if it is intended to | ||
# be loaded by MCUboot. If the secure firmware is to be combined with a non- | ||
# secure image (TRUSTED_EXECUTION_SECURE=y), the secure FW image shall always | ||
# be restricted to the size of its code partition. | ||
# For the non-secure version of the board, the firmware | ||
# must be linked into the code-partition (non-secure) defined in DT, regardless. | ||
# Apply this configuration below by setting the Kconfig symbols used by | ||
# the linker according to the information extracted from DT partitions. | ||
|
||
# Workaround for not being able to have commas in macro arguments | ||
DT_CHOSEN_Z_CODE_PARTITION := zephyr,code-partition | ||
|
||
config FLASH_LOAD_SIZE | ||
default $(dt_chosen_reg_size_hex,$(DT_CHOSEN_Z_CODE_PARTITION)) | ||
depends on BOARD_ACTINIUS_ICARUS_SOM_DK && TRUSTED_EXECUTION_SECURE | ||
|
||
if BOARD_ACTINIUS_ICARUS_SOM_DK_NS | ||
|
||
config FLASH_LOAD_OFFSET | ||
default $(dt_chosen_reg_addr_hex,$(DT_CHOSEN_Z_CODE_PARTITION)) | ||
|
||
config FLASH_LOAD_SIZE | ||
default $(dt_chosen_reg_size_hex,$(DT_CHOSEN_Z_CODE_PARTITION)) | ||
|
||
endif # BOARD_ACTINIUS_ICARUS_SOM_DK_NS | ||
|
||
endif # BOARD_ACTINIUS_ICARUS_SOM_DK || BOARD_ACTINIUS_ICARUS_SOM_DK_NS |
19 changes: 19 additions & 0 deletions
19
boards/arm/actinius_icarus_som_dk/actinius_icarus_som_dk.dts
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
/* | ||
* Copyright (c) 2022 Actinius | ||
* | ||
* SPDX-License-Identifier: Apache-2.0 | ||
*/ | ||
|
||
/dts-v1/; | ||
#include <nordic/nrf9160_sica.dtsi> | ||
#include "actinius_icarus_som_dk_common.dts" | ||
|
||
/ { | ||
chosen { | ||
zephyr,sram = &sram0_s; | ||
zephyr,flash = &flash0; | ||
zephyr,code-partition = &slot0_partition; | ||
zephyr,sram-secure-partition = &sram0_s; | ||
zephyr,sram-non-secure-partition = &sram0_ns; | ||
}; | ||
}; |
21 changes: 21 additions & 0 deletions
21
boards/arm/actinius_icarus_som_dk/actinius_icarus_som_dk.yaml
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,21 @@ | ||
identifier: actinius_icarus_som_dk | ||
name: Actinius Icarus SoM DK | ||
type: mcu | ||
arch: arm | ||
toolchain: | ||
- gnuarmemb | ||
- xtools | ||
- zephyr | ||
ram: 88 | ||
flash: 256 | ||
supported: | ||
- gpio | ||
- i2c | ||
- pwm | ||
- spi | ||
- watchdog | ||
- counter | ||
- arduino_gpio | ||
- arduino_i2c | ||
- arduino_serial | ||
- arduino_spi |
85 changes: 85 additions & 0 deletions
85
boards/arm/actinius_icarus_som_dk/actinius_icarus_som_dk_common-pinctrl.dtsi
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,85 @@ | ||
/* | ||
* Copyright (c) 2022 Actinius | ||
* SPDX-License-Identifier: Apache-2.0 | ||
*/ | ||
|
||
&pinctrl { | ||
uart0_default: uart0_default { | ||
group1 { | ||
psels = <NRF_PSEL(UART_TX, 0, 9)>, | ||
<NRF_PSEL(UART_RX, 0, 6)>; | ||
}; | ||
}; | ||
|
||
uart0_sleep: uart0_sleep { | ||
group1 { | ||
psels = <NRF_PSEL(UART_TX, 0, 9)>, | ||
<NRF_PSEL(UART_RX, 0, 6)>; | ||
low-power-enable; | ||
}; | ||
}; | ||
|
||
i2c2_default: i2c2_default { | ||
group1 { | ||
psels = <NRF_PSEL(TWIM_SDA, 0, 10)>, | ||
<NRF_PSEL(TWIM_SCL, 0, 11)>; | ||
}; | ||
}; | ||
|
||
i2c2_sleep: i2c2_sleep { | ||
group1 { | ||
psels = <NRF_PSEL(TWIM_SDA, 0, 10)>, | ||
<NRF_PSEL(TWIM_SCL, 0, 11)>; | ||
low-power-enable; | ||
}; | ||
}; | ||
|
||
spi3_default: spi3_default { | ||
group1 { | ||
psels = <NRF_PSEL(SPIM_SCK, 0, 22)>, | ||
<NRF_PSEL(SPIM_MOSI, 0, 25)>, | ||
<NRF_PSEL(SPIM_MISO, 0, 21)>; | ||
}; | ||
}; | ||
|
||
spi3_sleep: spi3_sleep { | ||
group1 { | ||
psels = <NRF_PSEL(SPIM_SCK, 0, 22)>, | ||
<NRF_PSEL(SPIM_MOSI, 0, 25)>, | ||
<NRF_PSEL(SPIM_MISO, 0, 21)>; | ||
low-power-enable; | ||
}; | ||
}; | ||
|
||
neopixel_spi_default: neopixel_spi_default { | ||
group1 { | ||
psels = <NRF_PSEL(SPIM_SCK, 0, 0)>, | ||
<NRF_PSEL(SPIM_MOSI, 0, 8)>, | ||
<NRF_PSEL(SPIM_MISO, 0, 0)>; | ||
}; | ||
}; | ||
|
||
neopixel_spi_sleep: neopixel_spi_sleep { | ||
group1 { | ||
psels = <NRF_PSEL(SPIM_SCK, 0, 0)>, | ||
<NRF_PSEL(SPIM_MOSI, 0, 8)>, | ||
<NRF_PSEL(SPIM_MISO, 0, 0)>; | ||
low-power-enable; | ||
}; | ||
}; | ||
|
||
pwm0_default: pwm0_default { | ||
group1 { | ||
psels = <NRF_PSEL(PWM_OUT0, 0, 3)>; | ||
nordic,invert; | ||
}; | ||
}; | ||
|
||
pwm0_sleep: pwm0_sleep { | ||
group1 { | ||
psels = <NRF_PSEL(PWM_OUT0, 0, 3)>; | ||
low-power-enable; | ||
}; | ||
}; | ||
|
||
}; |
Oops, something went wrong.