Compare commits

..

No commits in common. "832261dbe5d7a52af03e3a877b007c34354d79e7" and "f9e3b65d3a9794ee2233aa88172346f887b48d04" have entirely different histories.

1280 changed files with 12656 additions and 27417 deletions

View file

@ -39,7 +39,6 @@ ForEachMacros:
- 'FOR_EACH_IDX'
- 'FOR_EACH_IDX_FIXED_ARG'
- 'FOR_EACH_NONEMPTY_TERM'
- 'FOR_EACH_FIXED_ARG_NONEMPTY_TERM'
- 'RB_FOR_EACH'
- 'RB_FOR_EACH_CONTAINER'
- 'SYS_DLIST_FOR_EACH_CONTAINER'
@ -69,16 +68,8 @@ ForEachMacros:
- 'Z_GENLIST_FOR_EACH_NODE'
- 'Z_GENLIST_FOR_EACH_NODE_SAFE'
- 'STRUCT_SECTION_FOREACH'
- 'STRUCT_SECTION_FOREACH_ALTERNATE'
- 'TYPE_SECTION_FOREACH'
- 'K_SPINLOCK'
- 'COAP_RESOURCE_FOREACH'
- 'COAP_SERVICE_FOREACH'
- 'COAP_SERVICE_FOREACH_RESOURCE'
- 'HTTP_RESOURCE_FOREACH'
- 'HTTP_SERVER_CONTENT_TYPE_FOREACH'
- 'HTTP_SERVICE_FOREACH'
- 'HTTP_SERVICE_FOREACH_RESOURCE'
IfMacros:
- 'CHECKIF'
# Disabled for now, see bug https://github.com/zephyrproject-rtos/zephyr/issues/48520

6
.github/SECURITY.md vendored
View file

@ -11,9 +11,9 @@ updates:
At this time, with the latest release of v3.6, the supported
versions are:
- v3.7: Current LTS
- v3.6: Prior release
- v2.7: Prior LTS
- v2.7: Current LTS
- v3.5: Prior release
- v3.6: Current release
## Reporting process

View file

@ -149,9 +149,9 @@ jobs:
- name: compress-docs
run: |
tar --use-compress-program="xz -T0" -cf html-output.tar.xz --directory=doc/_build html
tar --use-compress-program="xz -T0" -cf api-output.tar.xz --directory=doc/_build html/doxygen/html
tar --use-compress-program="xz -T0" -cf api-coverage.tar.xz coverage-report
tar cfJ html-output.tar.xz --directory=doc/_build html
tar cfJ api-output.tar.xz --directory=doc/_build html/doxygen/html
tar cfJ api-coverage.tar.xz coverage-report
- name: upload-build
uses: actions/upload-artifact@v4

View file

@ -26,13 +26,12 @@ jobs:
west init -l . || true
- name: Manifest
uses: zephyrproject-rtos/action-manifest@v1.3.0
uses: zephyrproject-rtos/action-manifest@v1.2.2
with:
github-token: ${{ secrets.ZB_GITHUB_TOKEN }}
manifest-path: 'west.yml'
checkout-path: 'zephyrproject/zephyr'
use-tree-checkout: 'true'
check-impostor-commits: 'true'
label-prefix: 'manifest-'
verbosity-level: '1'
labels: 'manifest'

View file

@ -41,7 +41,6 @@
/soc/riscv/riscv-privileged/gd32vf103/ @soburi
/soc/starfive/jh71xx/ @pfarwsi
/soc/riscv/riscv-privileged/niosv/ @sweeaun
/boards/adafruit/feather_nrf52840/ @jacobw
/boards/ene/ @ene-steven
/boards/arm/96b_argonkey/ @avisconti
/boards/arm/96b_avenger96/ @Mani-Sadhasivam
@ -327,6 +326,7 @@
/drivers/serial/uart_altera.c @gohshunjing
/drivers/serial/*ns16550* @dcpleung @nashif @gdengi
/drivers/serial/*nrfx* @anangl
/drivers/serial/uart_liteuart.c @mateusz-holenko @kgugala @pgielda
/drivers/serial/Kconfig.mcux_iuart @Mani-Sadhasivam
/drivers/serial/uart_mcux_iuart.c @Mani-Sadhasivam
/drivers/serial/Kconfig.rtt @carlescufi @pkral78

View file

@ -1,19 +0,0 @@
# Constant variables to be used across Kconfig options
# Copyright (c) 2024 basalte bv
# SPDX-License-Identifier: Apache-2.0
INT8_MIN := -128
INT16_MIN := -32768
INT32_MIN := -2147483648
INT64_MIN := -9223372036854775808
INT8_MAX := 127
INT16_MAX := 32767
INT32_MAX := 2147483647
INT64_MAX := 9223372036854775807
UINT8_MAX := 255
UINT16_MAX := 65535
UINT32_MAX := 4294967295
UINT64_MAX := 18446744073709551615

View file

@ -5,8 +5,6 @@
# Copyright (c) 2023 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0
source "Kconfig.constants"
osource "${APPLICATION_SOURCE_DIR}/VERSION"
# Include Kconfig.defconfig files first so that they can override defaults and

View file

@ -3208,8 +3208,6 @@ ADI Platforms:
maintainers:
- MaureenHelm
collaborators:
- ozersa
- ttmut
- galak
- microbuilder
files:
@ -3446,9 +3444,6 @@ NXP Drivers:
- manuargue
- dbaluta
- MarkWangChinese
files-regex:
- ^drivers/.*nxp.*
- ^drivers/.*mcux.*
files:
- drivers/*/*imx*
- drivers/*/*lpc*.c
@ -3681,14 +3676,13 @@ Renesas RA Platforms:
- thaoluonguw
files:
- boards/arduino/uno_r4/
- boards/renesas/*ra8*/
- drivers/*/*renesas_ra*
- drivers/pinctrl/renesas/ra/
- dts/arm/renesas/ra/
- dts/bindings/*/*renesas,ra*
- soc/renesas/ra/
labels:
- "platform: Renesas RA"
- "platforms: Renesas RA"
description: >-
Renesas RA SOCs, dts files, and related drivers. Boards based
on Renesas RA SoCs.
@ -3895,6 +3889,7 @@ LiteX Platforms:
files:
- boards/enjoydigital/litex_vexriscv/
- drivers/*/*litex*
- drivers/spi/spi_litespi*
- drivers/*/Kconfig.litex
- dts/bindings/*/litex*
- dts/riscv/riscv32-litex-vexriscv.dtsi
@ -4386,7 +4381,6 @@ West:
- MaureenHelm
collaborators:
- ozersa
- ttmut
files: []
labels:
- "platform: ADI"

View file

@ -1,5 +1,5 @@
VERSION_MAJOR = 3
VERSION_MINOR = 7
PATCHLEVEL = 99
PATCHLEVEL = 0
VERSION_TWEAK = 0
EXTRAVERSION =
EXTRAVERSION = rc3

View file

@ -32,7 +32,6 @@ config ARM
bool
select ARCH_IS_SET
select ARCH_SUPPORTS_COREDUMP if CPU_CORTEX_M
select ARCH_SUPPORTS_COREDUMP_THREADS if CPU_CORTEX_M
# FIXME: current state of the code for all ARM requires this, but
# is really only necessary for Cortex-M with ARM MPU!
select GEN_PRIV_STACKS
@ -655,9 +654,6 @@ config ARCH_HAS_NESTED_EXCEPTION_DETECTION
config ARCH_SUPPORTS_COREDUMP
bool
config ARCH_SUPPORTS_COREDUMP_THREADS
bool
config ARCH_SUPPORTS_ARCH_HW_INIT
bool

View file

@ -330,7 +330,7 @@ config ZERO_LATENCY_IRQS
config ZERO_LATENCY_LEVELS
int "Number of interrupt priority levels reserved for zero latency"
depends on ZERO_LATENCY_IRQS
range 1 $(UINT8_MAX)
range 1 255
help
The amount of interrupt priority levels reserved for zero latency
interrupts. Increase this value to reserve more than one priority

View file

@ -226,13 +226,6 @@ void _Fault(struct arch_esf *esf)
unsigned int reason = K_ERR_CPU_EXCEPTION;
if (bad_stack_pointer(esf)) {
#ifdef CONFIG_PMP_STACK_GUARD
/*
* Remove the thread's PMP setting to prevent triggering a stack
* overflow error again due to the previous configuration.
*/
z_riscv_pmp_stackguard_disable();
#endif /* CONFIG_PMP_STACK_GUARD */
reason = K_ERR_STACK_CHK_FAIL;
}

View file

@ -347,21 +347,6 @@ no_fp: /* increment _current->arch.exception_depth */
*/
li t1, RISCV_EXC_ECALLU
beq t0, t1, is_user_syscall
#ifdef CONFIG_PMP_STACK_GUARD
/*
* Determine if we come from user space. If so, reconfigure the PMP for
* kernel mode stack guard.
*/
csrr t0, mstatus
li t1, MSTATUS_MPP
and t0, t0, t1
bnez t0, 1f
lr a0, ___cpu_t_current_OFFSET(s0)
call z_riscv_pmp_stackguard_enable
1:
#endif /* CONFIG_PMP_STACK_GUARD */
#endif /* CONFIG_USERSPACE */
/*

View file

@ -511,37 +511,6 @@ void z_riscv_pmp_stackguard_enable(struct k_thread *thread)
csr_set(mstatus, MSTATUS_MPRV);
}
/**
* @brief Remove PMP stackguard content to actual PMP registers
*/
void z_riscv_pmp_stackguard_disable(void)
{
unsigned long pmp_addr[PMP_M_MODE_SLOTS];
unsigned long pmp_cfg[PMP_M_MODE_SLOTS / sizeof(unsigned long)];
unsigned int index = global_pmp_end_index;
/* Retrieve the pmpaddr value matching the last global PMP slot. */
pmp_addr[global_pmp_end_index - 1] = global_pmp_last_addr;
/* Disable (non-locked) PMP entries for m-mode while we update them. */
csr_clear(mstatus, MSTATUS_MPRV);
/*
* Set a temporary default "catch all" PMP entry for MPRV to work,
* except for the global locked entries.
*/
set_pmp_mprv_catchall(&index, pmp_addr, pmp_cfg, ARRAY_SIZE(pmp_addr));
/* Write "catch all" entry and clear unlocked entries to PMP regs. */
write_pmp_entries(global_pmp_end_index, index,
true, pmp_addr, pmp_cfg, ARRAY_SIZE(pmp_addr));
if (PMP_DEBUG_DUMP) {
dump_pmp_regs("catch all register dump");
}
}
#endif /* CONFIG_PMP_STACK_GUARD */
#ifdef CONFIG_USERSPACE

View file

@ -58,12 +58,12 @@ static inline bool in_user_thread_stack_bound(uintptr_t addr, const struct k_thr
/* See: zephyr/include/zephyr/arch/riscv/arch.h */
if (IS_ENABLED(CONFIG_PMP_POWER_OF_TWO_ALIGNMENT)) {
start = thread->arch.priv_stack_start + Z_RISCV_STACK_GUARD_SIZE;
start = thread->arch.priv_stack_start - CONFIG_PRIVILEGED_STACK_SIZE;
end = thread->arch.priv_stack_start;
} else {
start = thread->stack_info.start - CONFIG_PRIVILEGED_STACK_SIZE;
end = thread->stack_info.start;
}
end = Z_STACK_PTR_ALIGN(thread->arch.priv_stack_start + K_KERNEL_STACK_RESERVED +
CONFIG_PRIVILEGED_STACK_SIZE);
return (addr >= start) && (addr < end);
}

View file

@ -10,7 +10,6 @@
void z_riscv_pmp_init(void);
void z_riscv_pmp_stackguard_prepare(struct k_thread *thread);
void z_riscv_pmp_stackguard_enable(struct k_thread *thread);
void z_riscv_pmp_stackguard_disable(void);
void z_riscv_pmp_usermode_init(struct k_thread *thread);
void z_riscv_pmp_usermode_prepare(struct k_thread *thread);
void z_riscv_pmp_usermode_enable(struct k_thread *thread);

View file

@ -205,7 +205,7 @@ config MAX_IRQ_LINES
config IRQ_OFFLOAD_VECTOR
int "IDT vector to use for IRQ offload"
default 33
range 32 $(UINT8_MAX)
range 32 255
depends on IRQ_OFFLOAD
config PIC_DISABLE

View file

@ -42,13 +42,13 @@ config X86_EXCEPTION_STACK_TRACE
config SCHED_IPI_VECTOR
int "IDT vector to use for scheduler IPI"
default 34
range 33 $(UINT8_MAX)
range 33 255
depends on SMP
config TLB_IPI_VECTOR
int "IDT vector to use for TLB shootdown IPI"
default 35
range 33 $(UINT8_MAX)
range 33 255
depends on SMP
# We should really only have to provide one of the following two values,

View file

@ -17,5 +17,3 @@ if(EXISTS ${BOARD_DIR}/CMakeLists.txt)
add_subdirectory(${BOARD_DIR} ${build_dir})
endif()
add_subdirectory(shields)

View file

@ -0,0 +1,10 @@
# Adafruit Feather nRF52840 Express board configuration
# Copyright (c) 2020 Tobias Svehagen
# SPDX-License-Identifier: Apache-2.0
config BOARD_ENABLE_DCDC
bool "DCDC mode"
select SOC_DCDC_NRF52X
default y
depends on BOARD_ADAFRUIT_FEATHER

View file

@ -1,8 +1,7 @@
# Adafruit Feather nRF52840 Express board configuration
# Copyright (c) 2020 Tobias Svehagen
# Copyright (c) 2024 Jacob Winther
# SPDX-License-Identifier: Apache-2.0
config BOARD_ADAFRUIT_FEATHER_NRF52840_SENSE
config BOARD_ADAFRUIT_FEATHER
select SOC_NRF52840_QIAA

View file

@ -1,8 +1,11 @@
# Adafruit Feather nRF52840 Express board configuration
# Copyright (c) 2020 Tobias Svehagen
# Copyright (c) 2024 Jacob Winther
# SPDX-License-Identifier: Apache-2.0
config BOARD_ADAFRUIT_FEATHER_NRF52840_EXPRESS
select SOC_NRF52840_QIAA
if BOARD_ADAFRUIT_FEATHER
config BT_CTLR
default BT
endif # BOARD_ADAFRUIT_FEATHER

View file

@ -1,6 +1,5 @@
/*
* Copyright (c) 2020 Tobias Svehagen
* Copyright (c) 2024 Jacob Winther
*
* SPDX-License-Identifier: Apache-2.0
*/
@ -12,16 +11,25 @@
#include <zephyr/dt-bindings/input/input-event-codes.h>
/ {
model = "Adafruit Feather nRF52840 Express";
compatible = "adafruit,feather-nrf52840";
chosen {
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
zephyr,uart-mcumgr = &uart0;
zephyr,bt-mon-uart = &uart0;
zephyr,bt-c2h-uart = &uart0;
zephyr,sram = &sram0;
zephyr,flash = &flash0;
zephyr,code-partition = &slot0_partition;
zephyr,ieee802154 = &ieee802154;
};
leds {
compatible = "gpio-leds";
led0: led_0 {
gpios = <&gpio1 15 0>;
label = "Red LED";
};
led1: led_1 {
@ -111,7 +119,7 @@
writeoc = "pp4o";
readoc = "read4io";
sck-frequency = <16000000>;
jedec-id = [ c8 40 15 ];
jedec-id = [c8 40 15];
size = <16777216>;
has-dpd;
t-enter-dpd = <20000>;
@ -124,6 +132,43 @@
status = "okay";
};
&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x00000000 0x0000C000>;
};
slot0_partition: partition@c000 {
label = "image-0";
reg = <0x0000C000 0x00067000>;
};
slot1_partition: partition@73000 {
label = "image-1";
reg = <0x00073000 0x00067000>;
};
scratch_partition: partition@da000 {
label = "image-scratch";
reg = <0x000da000 0x0001e000>;
};
/*
* The flash starting at 0x000f8000 and ending at
* 0x000fffff is reserved for use by the application.
*/
/* Storage partition will be used by FCB/NFFS/NVS if enabled. */
storage_partition: partition@f8000 {
label = "storage";
reg = <0x000f8000 0x00008000>;
};
};
};
zephyr_udc0: &usbd {
compatible = "nordic,nrf-usbd";
status = "okay";

View file

@ -1,4 +1,4 @@
identifier: adafruit_feather_nrf52840_express
identifier: adafruit_feather/nrf52840
name: Adafruit Feather nRF52840 Express
type: mcu
arch: arm

View file

@ -2,9 +2,6 @@
board_runner_args(jlink "--device=nRF52840_xxAA" "--speed=4000")
board_runner_args(pyocd "--target=nrf52840" "--frequency=4000000")
if(CONFIG_BOARD_ADAFRUIT_FEATHER_NRF52840_SENSE)
include(${ZEPHYR_BASE}/boards/common/uf2.board.cmake)
endif()
include(${ZEPHYR_BASE}/boards/common/jlink.board.cmake)
include(${ZEPHYR_BASE}/boards/common/pyocd.board.cmake)
include(${ZEPHYR_BASE}/boards/common/blackmagicprobe.board.cmake)

View file

@ -0,0 +1,5 @@
board:
name: adafruit_feather
vendor: adafruit
socs:
- name: nrf52840

View file

@ -1,7 +1,7 @@
.. _adafruit_feather_nrf52840:
Adafruit Feather nRF52840 (Express, Sense)
##########################################
Adafruit Feather nRF52840 Express
#################################
Overview
********
@ -25,19 +25,9 @@ nRF52840 ARM Cortex-M4F CPU and the following devices:
* :abbr:`USB (Universal Serial Bus)`
* :abbr:`WDT (Watchdog Timer)`
.. tabs::
.. group-tab:: Express
.. figure:: img/adafruit_feather_nrf52840_express.jpg
:align: center
:alt: Adafruit Feather nRF52840 Express
.. group-tab:: Sense
.. figure:: img/adafruit_feather_nrf52840_sense.jpg
:align: center
:alt: Adafruit Feather nRF52840 Sense
.. figure:: img/adafruit_feather_nrf52840.jpg
:align: center
:alt: Adafruit Feather nRF52840 Express
Hardware
********
@ -49,14 +39,7 @@ Hardware
- 2 User LEDs
- 1 NeoPixel LED
- Reset button
- SWD connector (Express only)
- SWD solder pads on bottom of PCB (Sense only)
- LSM6DS33 Accel/Gyro (Sense only)
- LIS3MDL magnetometer (Sense only)
- APDS9960 Proximity, Light, Color, and Gesture Sensor (Sense only)
- MP34DT01-M PDM Microphone sound sensor (Sense only)
- SHT3X Humidity sensor (Sense only)
- BMP280 temperature and barometric pressure/altitude (Sense only)
- SWD connector
Supported Features
==================
@ -102,25 +85,13 @@ Other hardware features have not been enabled yet for this board.
Connections and IOs
===================
.. tabs::
.. group-tab:: Express
The `Adafruit Feather nRF52840 Express Learn site`_ has
detailed information about the board including
`pinouts (Express)`_ and the `schematic (Express)`_.
.. group-tab:: Sense
The `Adafruit Feather nRF52840 Sense Learn site`_ has
detailed information about the board including
`pinouts (Sense)`_ and the `schematic (Sense)`_.
The `Adafruit Feather nRF52840 Express Learn site`_ has detailed
information about the board including `pinouts`_ and the `schematic`_.
LED
---
* LED0 (red) = P1.15 (Express)
* LED0 (red) = P1.9 (Sense)
* LED0 (red) = P1.15
* LED1 (blue) = P1.10
Push buttons
@ -132,56 +103,33 @@ Push buttons
Programming and Debugging
*************************
Applications for the ``adafruit_feather/nrf52840`` board configuration
can be built and flashed in the usual way (see :ref:`build_an_application`
and :ref:`application_run` for more details).
Flashing
========
Flashing Zephyr onto the ``adafruit_feather_nrf52480_express`` board is possible
using an external programmer. The programmer is attached to the SWD header.
Flashing Zephyr onto the ``adafruit_feather_nrf52480`` board requires
an external programmer. The programmer is attached to the SWD header.
The Feather nRF52840 ships with the `Adafruit nRF52 Bootloader`_ which
supports flashing using `UF2`_. This allows easy flashing of new images,
but does not support debugging the device.
Build the Zephyr kernel and the :zephyr:code-sample:`blinky` sample application.
#. Build the Zephyr kernel and the :zephyr:code-sample:`blinky` sample application.
.. zephyr-app-commands::
:zephyr-app: samples/basic/blinky
:board: adafruit_feather/nrf52840
:goals: build
:compact:
.. tabs::
Flash the image.
.. group-tab:: Express
.. zephyr-app-commands::
:zephyr-app: samples/basic/blinky
:board: adafruit_feather/nrf52840
:goals: flash
:compact:
.. zephyr-app-commands::
:zephyr-app: samples/basic/blinky
:board: adafruit_feather_nrf52840_express/nrf52840
:goals: build
:compact:
.. group-tab:: Sense
.. zephyr-app-commands::
:zephyr-app: samples/basic/blinky
:board: adafruit_feather_nrf52840_sense/nrf52840
:goals: build
:compact:
#. If using UF2, connect the board to your host computer using USB.
#. Tap the reset button twice quickly to enter bootloader mode.
A mass storage device named `FTHR840BOOT` for (Express) or
`FTHRSNSBOOT` (Sense) should appear on the host. Ensure this is
mounted.
#. Flash the image.
.. tabs::
.. group-tab:: Sense
.. zephyr-app-commands::
:zephyr-app: samples/basic/blinky
:board: adafruit_feather_nrf52840_sense
:goals: flash
:compact:
#. You should see the red LED blink.
You should see the red LED blink.
References
**********
@ -191,23 +139,8 @@ References
.. _Adafruit Feather nRF52840 Express Learn site:
https://learn.adafruit.com/introducing-the-adafruit-nrf52840-feather/
.. _pinouts (Express):
.. _pinouts:
https://learn.adafruit.com/introducing-the-adafruit-nrf52840-feather/pinouts
.. _schematic (Express):
.. _schematic:
https://learn.adafruit.com/introducing-the-adafruit-nrf52840-feather/downloads
.. _Adafruit Feather nRF52840 Sense Learn site:
https://learn.adafruit.com/adafruit-feather-sense
.. _pinouts (Sense):
https://learn.adafruit.com/adafruit-feather-sense/pinouts
.. _schematic (Sense):
https://learn.adafruit.com/adafruit-feather-sense/downloads
.. _Adafruit nRF52 Bootloader:
https://github.com/adafruit/Adafruit_nRF52_Bootloader
.. _UF2:
https://github.com/microsoft/uf2

View file

@ -1,18 +0,0 @@
# Adafruit Feather nRF52840 Express board configuration
# Copyright (c) 2020 Tobias Svehagen
# Copyright (c) 2024 Jacob Winther
# SPDX-License-Identifier: Apache-2.0
config BOARD_ENABLE_DCDC
bool "DCDC mode"
select SOC_DCDC_NRF52X
default y
depends on BOARD_ADAFRUIT_FEATHER_NRF52840_EXPRESS || BOARD_ADAFRUIT_FEATHER_NRF52840_SENSE
if BOARD_ADAFRUIT_FEATHER_NRF52840_SENSE
config BOARD_SERIAL_BACKEND_CDC_ACM
bool "USB CDC"
default y
endif # BOARD_ADAFRUIT_FEATHER_NRF52840_SENSE

View file

@ -1,54 +0,0 @@
# Adafruit Feather nRF52840 Express board configuration
# Copyright (c) 2020 Tobias Svehagen
# Copyright (c) 2024 Jacob Winther
# SPDX-License-Identifier: Apache-2.0
if (BOARD_ADAFRUIT_FEATHER_NRF52840_EXPRESS || BOARD_ADAFRUIT_FEATHER_NRF52840_SENSE)
config BT_CTLR
default BT
if BOARD_SERIAL_BACKEND_CDC_ACM
config USB_DEVICE_STACK
default y
config USB_CDC_ACM
default SERIAL
config UART_CONSOLE
default CONSOLE
config USB_DEVICE_INITIALIZE_AT_BOOT
default y if CONSOLE
config SHELL_BACKEND_SERIAL_CHECK_DTR
default SHELL
depends on UART_LINE_CTRL
config UART_LINE_CTRL
default SHELL
config USB_DEVICE_REMOTE_WAKEUP
default n
if LOG
# Logger cannot use itself to log
config USB_CDC_ACM_LOG_LEVEL
default 0
# Set USB log level to error only
config USB_DEVICE_LOG_LEVEL
default 1
# Wait 1500ms at startup for logging
config LOG_PROCESS_THREAD_STARTUP_DELAY_MS
default 1500
endif # LOG
endif # BOARD_SERIAL_BACKEND_CDC_ACM
endif # BOARD_ADAFRUIT_FEATHER_NRF52840_EXPRESS || BOARD_ADAFRUIT_FEATHER_NRF52840_SENSE

View file

@ -1,66 +0,0 @@
/*
* Copyright (c) 2020 Tobias Svehagen
* Copyright (c) 2024 Jacob Winther
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include "adafruit_feather_nrf52840_common.dtsi"
/ {
model = "Adafruit Feather nRF52840 Express";
compatible = "adafruit,feather_nrf52840-express";
chosen {
zephyr,console = &uart0;
zephyr,shell-uart = &uart0;
zephyr,uart-mcumgr = &uart0;
zephyr,bt-mon-uart = &uart0;
zephyr,bt-c2h-uart = &uart0;
zephyr,code-partition = &slot0_partition;
};
leds {
led0: led_0 {
gpios = <&gpio1 15 0>;
};
};
};
&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
boot_partition: partition@0 {
label = "mcuboot";
reg = <0x00000000 0x0000C000>;
};
slot0_partition: partition@c000 {
label = "image-0";
reg = <0x0000C000 0x00067000>;
};
slot1_partition: partition@73000 {
label = "image-1";
reg = <0x00073000 0x00067000>;
};
scratch_partition: partition@da000 {
label = "image-scratch";
reg = <0x000da000 0x0001e000>;
};
/*
* The flash starting at 0x000f8000 and ending at
* 0x000fffff is reserved for use by the application.
*/
/* Storage partition will be used by FCB/NFFS/NVS if enabled. */
storage_partition: partition@f8000 {
label = "storage";
reg = <0x000f8000 0x00008000>;
};
};
};

View file

@ -1,78 +0,0 @@
/*
* Copyright (c) 2020 Tobias Svehagen
* Copyright (c) 2024 Jacob Winther
*
* SPDX-License-Identifier: Apache-2.0
*/
/dts-v1/;
#include "adafruit_feather_nrf52840_common.dtsi"
/ {
model = "Adafruit Feather nRF52840 Sense";
compatible = "adafruit,feather_nrf52840-sense";
chosen {
zephyr,console = &cdc_acm_uart0;
zephyr,shell-uart = &cdc_acm_uart0;
zephyr,uart-mcumgr = &cdc_acm_uart0;
zephyr,bt-mon-uart = &cdc_acm_uart0;
zephyr,bt-c2h-uart = &cdc_acm_uart0;
zephyr,code-partition = &code_partition;
};
leds {
led0: led_0 {
gpios = <&gpio1 9 0>;
};
};
};
&i2c0 {
SHT3XD: sht3xd@44 {
compatible = "sensirion,sht3xd";
reg = <0x44>;
};
};
&flash0 {
partitions {
compatible = "fixed-partitions";
#address-cells = <1>;
#size-cells = <1>;
/* To enable flashing with UF2 bootloader, we
* must reserve a partition for SoftDevice.
* See https://learn.adafruit.com/
* introducing-the-adafruit-nrf52840-feather?view=all#hathach-memory-map
*/
reserved_partition_0: partition@0 {
label = "SoftDevice";
reg = <0x000000000 DT_SIZE_K(152)>;
};
code_partition: partition@26000 {
label = "Application";
reg = <0x00026000 DT_SIZE_K(796)>;
};
/*
* The flash starting at 0x000ed000 and ending at
* 0x000f4000 is reserved for use by the application.
*/
storage_partition: partition@ed000 {
label = "storage";
reg = <0x0000ed000 DT_SIZE_K(28)>;
};
boot_partition: partition@f4000 {
label = "UF2";
reg = <0x000f4000 DT_SIZE_K(48)>;
};
};
};
zephyr_udc0: &usbd {
cdc_acm_uart0: cdc_acm_uart0 {
compatible = "zephyr,cdc-acm-uart";
};
};

View file

@ -1,19 +0,0 @@
identifier: adafruit_feather_nrf52840_sense
name: Adafruit Feather nRF52840 Sense
type: mcu
arch: arm
toolchain:
- zephyr
- gnuarmemb
- xtools
supported:
- adc
- usb_device
- usb_cdc
- ble
- watchdog
- counter
- feather_serial
- feather_i2c
- feather_spi
vendor: adafruit

View file

@ -1,25 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
# Enable MPU
CONFIG_ARM_MPU=y
# enable GPIO
CONFIG_GPIO=y
# enable uart driver
CONFIG_SERIAL=y
# enable console
CONFIG_CONSOLE=y
CONFIG_UART_CONSOLE=y
# 32kHz clock source
CONFIG_CLOCK_CONTROL_NRF_K32SRC_RC=y
CONFIG_CLOCK_CONTROL_NRF_K32SRC_500PPM=y
# enable bossac
CONFIG_BOOTLOADER_BOSSA=y
CONFIG_BOOTLOADER_BOSSA_ADAFRUIT_UF2=y
# Build UF2 by default, supported by the Adafruit nRF52 Bootloader
CONFIG_BUILD_OUTPUT_UF2=y

View file

@ -1,9 +0,0 @@
boards:
- name: adafruit_feather_nrf52840_express
vendor: adafruit
socs:
- name: nrf52840
- name: adafruit_feather_nrf52840_sense
vendor: adafruit
socs:
- name: nrf52840

Binary file not shown.

Before

Width:  |  Height:  |  Size: 35 KiB

View file

@ -93,10 +93,6 @@
status = "okay";
};
&trng {
status = "okay";
};
arduino_serial: &uart1 {
clock-source = <ADI_MAX32_PRPH_CLK_SRC_IBRO>;
pinctrl-0 = <&uart1a_tx_p2_16 &uart1a_rx_p2_14>;

View file

@ -13,6 +13,5 @@ supported:
- gpio
- serial
- spi
- trng
ram: 1024
flash: 3072

View file

@ -113,8 +113,6 @@ Below interfaces are supported by Zephyr on APARD32690.
+-----------+------------+------------------------------------+
| ADIN1110 | spi | ADIN1110 10BASE-T1L mac/phy |
+-----------+------------+------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+------------------------------------+
Connections and IOs

View file

@ -87,10 +87,6 @@ Below are the interfaces supported by Zephyr on MAX32655EVKIT.
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+-------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
Connections and IOs
===================

View file

@ -91,7 +91,3 @@
&gpio3 {
status = "okay";
};
&trng {
status = "okay";
};

View file

@ -10,7 +10,5 @@ toolchain:
supported:
- gpio
- serial
- trng
- i2c
ram: 128
flash: 512

View file

@ -100,10 +100,6 @@ Below are the interfaces supported by Zephyr on MAX32655FTHR.
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+-------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
Push Buttons
************

View file

@ -125,7 +125,3 @@
&gpio3 {
status = "okay";
};
&trng {
status = "okay";
};

View file

@ -10,7 +10,5 @@ toolchain:
supported:
- gpio
- serial
- trng
- i2c
ram: 128
flash: 512

View file

@ -106,10 +106,6 @@ Below interfaces are supported by Zephyr on MAX32670EVKIT.
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+-------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
Connections and IOs

View file

@ -71,7 +71,3 @@
&gpio1 {
status = "okay";
};
&trng {
status = "okay";
};

View file

@ -10,7 +10,5 @@ toolchain:
supported:
- gpio
- serial
- trng
- i2c
ram: 160
flash: 384

View file

@ -99,10 +99,6 @@ Below interfaces are supported by Zephyr on MAX32672EVKIT.
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+-------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
Connections and IOs

View file

@ -71,7 +71,3 @@
&gpio1 {
status = "okay";
};
&trng {
status = "okay";
};

View file

@ -10,7 +10,5 @@ toolchain:
supported:
- gpio
- serial
- trng
- i2c
ram: 200
flash: 1024

View file

@ -1,36 +0,0 @@
# MAX32672FTHR boards configuration
# Copyright (c) 2024 Analog Devices, Inc.
# SPDX-License-Identifier: Apache-2.0
if BOARD_MAX32672FTHR
if DISPLAY
if LVGL
# LVGL should allocate buffers equal to size of display
config LV_Z_VDB_SIZE
default 64
# Default Dot Per Inch. [px/inch]
# Used to initialize default sizes such as widgets sized, style paddings.
config LV_DPI_DEF
default 128
config LV_Z_BITS_PER_PIXEL
default 1
# Use offloaded render thread
config LV_Z_FLUSH_THREAD
default y
choice LV_COLOR_DEPTH
default LV_COLOR_DEPTH_1 # 1 byte per pixel
endchoice
endif # LVGL
endif # DISPLAY
endif # BOARD_MAX32672FTHR

View file

@ -101,10 +101,6 @@ Below interfaces are supported by Zephyr on MAX32672FTHR.
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+-------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
Connections and IOs

View file

@ -20,7 +20,6 @@
zephyr,shell-uart = &uart0;
zephyr,sram = &sram3;
zephyr,flash = &flash0;
zephyr,display = &ssd1306;
};
leds {
@ -106,30 +105,3 @@
&gpio1 {
status = "okay";
};
&trng {
status = "okay";
};
&i2c2 {
pinctrl-0 = <&i2c2a_scl_p0_18 &i2c2a_sda_p0_19>;
pinctrl-names = "default";
clock-frequency = <I2C_BITRATE_FAST>;
status = "okay";
ssd1306: ssd1306@3d {
compatible = "solomon,ssd1306fb";
reg = <0x3d>;
width = <128>;
height = <32>;
segment-offset = <0>;
page-offset = <0>;
display-offset = <0>;
multiplex-ratio = <31>;
segment-remap;
com-invdir;
com-sequential;
prechargep = <0x22>;
inversion-on;
};
};

View file

@ -10,7 +10,5 @@ toolchain:
supported:
- gpio
- serial
- trng
- i2c
ram: 200
flash: 1024

View file

@ -110,10 +110,6 @@ Below interfaces are supported by Zephyr on MAX32680EVKIT.
+-----------+------------+-------------------------------------+
| UART | on-chip | serial |
+-----------+------------+-------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+-------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
Connections and IOs
===================

View file

@ -81,7 +81,3 @@
&gpio2 {
status = "okay";
};
&trng {
status = "okay";
};

View file

@ -10,7 +10,5 @@ toolchain:
supported:
- gpio
- serial
- trng
- i2c
ram: 128
flash: 512

View file

@ -113,8 +113,6 @@ Below interfaces are supported by Zephyr on MAX32690EVKIT.
+--------------------------------------------------------------+
| I2C | on-chip | i2c |
+-----------+------------+-------------------------------------+
| TRNG | on-chip | entropy |
+-----------+------------+-------------------------------------+
Connections and IOs

View file

@ -87,7 +87,3 @@
parity = "none";
status = "okay";
};
&trng {
status = "okay";
};

View file

@ -12,6 +12,5 @@ supported:
- serial
- spi
- i2c
- trng
ram: 1024
flash: 3072

View file

@ -69,31 +69,67 @@
group1 {
pinmux = <M0SCK_P5>, <M0MISO_P6>, <M0MOSI_P7>;
};
group2 {
pinmux = <NCE11_P11>;
drive-push-pull;
ambiq,iom-nce-module = <0>;
ambiq,iom-num = <0>;
};
};
spi1_default: spi1_default {
group1 {
pinmux = <M1SCK_P8>, <M1MISO_P9>, <M1MOSI_P10>;
};
group2 {
pinmux = <NCE14_P14>;
drive-push-pull;
ambiq,iom-nce-module = <1>;
ambiq,iom-num = <1>;
};
};
spi2_default: spi2_default {
group1 {
pinmux = <M2SCK_P27>, <M2MISO_P25>, <M2MOSI_P28>;
};
group2 {
pinmux = <NCE15_P15>;
drive-push-pull;
ambiq,iom-nce-module = <3>;
ambiq,iom-num = <2>;
};
};
spi3_default: spi3_default {
group1 {
pinmux = <M3SCK_P42>, <M3MISO_P43>, <M3MOSI_P38>;
};
group2 {
pinmux = <NCE12_P12>;
drive-push-pull;
ambiq,iom-nce-module = <0>;
ambiq,iom-num = <3>;
};
};
spi4_default: spi4_default {
group1 {
pinmux = <M4SCK_P39>, <M4MISO_P40>, <M4MOSI_P44>;
};
group2 {
pinmux = <NCE13_P13>;
drive-push-pull;
ambiq,iom-nce-module = <1>;
ambiq,iom-num = <4>;
};
};
spi5_default: spi5_default {
group1 {
pinmux = <M5SCK_P48>, <M5MISO_P49>, <M5MOSI_P47>;
};
group2 {
pinmux = <NCE16_P16>;
drive-push-pull;
ambiq,iom-nce-module = <0>;
ambiq,iom-num = <5>;
};
};
mspi0_default: mspi0_default{

View file

@ -106,7 +106,6 @@
compatible = "ambiq,spi";
pinctrl-0 = <&spi0_default>;
pinctrl-names = "default";
cs-gpios = <&gpio0_31 11 GPIO_ACTIVE_LOW>;
clock-frequency = <DT_FREQ_M(1)>;
status = "okay";
};

View file

@ -69,31 +69,73 @@
group1 {
pinmux = <M0SCK_P5>, <M0MISO_P6>, <M0MOSI_P7>;
};
group2 {
pinmux = <NCE11_P11>;
drive-push-pull;
ambiq,iom-mspi = <1>;
ambiq,iom-nce-module = <0>;
ambiq,iom-num = <0>;
};
};
spi1_default: spi1_default {
group1 {
pinmux = <M1SCK_P8>, <M1MISO_P9>, <M1MOSI_P10>;
};
group2 {
pinmux = <NCE34_P34>;
drive-push-pull;
ambiq,iom-mspi = <1>;
ambiq,iom-nce-module = <1>;
ambiq,iom-num = <1>;
};
};
spi2_default: spi2_default {
group1 {
pinmux = <M2SCK_P27>, <M2MISO_P25>, <M2MOSI_P28>;
};
group2 {
pinmux = <NCE15_P15>;
drive-push-pull;
ambiq,iom-mspi = <1>;
ambiq,iom-nce-module = <3>;
ambiq,iom-num = <2>;
};
};
spi3_default: spi3_default {
group1 {
pinmux = <M3SCK_P42>, <M3MISO_P43>, <M3MOSI_P38>;
};
group2 {
pinmux = <NCE29_P29>;
drive-push-pull;
ambiq,iom-mspi = <1>;
ambiq,iom-nce-module = <0>;
ambiq,iom-num = <3>;
};
};
spi4_default: spi4_default {
group1 {
pinmux = <M4SCK_P39>, <M4MISO_P40>, <M4MOSI_P44>;
};
group2 {
pinmux = <NCE13_P13>;
drive-push-pull;
ambiq,iom-mspi = <1>;
ambiq,iom-nce-module = <1>;
ambiq,iom-num = <4>;
};
};
spi5_default: spi5_default {
group1 {
pinmux = <M5SCK_P48>, <M5MISO_P49>, <M5MOSI_P47>;
};
group2 {
pinmux = <NCE16_P16>;
drive-push-pull;
ambiq,iom-mspi = <1>;
ambiq,iom-nce-module = <0>;
ambiq,iom-num = <5>;
};
};
mspi0_default: mspi0_default{

View file

@ -106,7 +106,6 @@
compatible = "ambiq,spi";
pinctrl-0 = <&spi0_default>;
pinctrl-names = "default";
cs-gpios = <&gpio0_31 11 GPIO_ACTIVE_LOW>;
clock-frequency = <DT_FREQ_M(1)>;
status = "okay";
};

View file

@ -13,10 +13,10 @@ config BT_BUF_ACL_TX_COUNT
default 14
config BT_BUF_CMD_TX_SIZE
default $(UINT8_MAX)
default 255
config BT_BUF_EVT_RX_SIZE
default $(UINT8_MAX)
default 255
config BT_BUF_ACL_TX_SIZE
default 251

View file

@ -77,41 +77,81 @@
group1 {
pinmux = <M0SCK_P5>, <M0MISO_P7>, <M0MOSI_P6>;
};
group2 {
pinmux = <NCE72_P72>;
drive-push-pull;
ambiq,iom-nce-module = <0>;
};
};
spi1_default: spi1_default {
group1 {
pinmux = <M1SCK_P8>, <M1MISO_P10>, <M1MOSI_P9>;
};
group2 {
pinmux = <NCE11_P11>;
drive-push-pull;
ambiq,iom-nce-module = <4>;
};
};
spi2_default: spi2_default {
group1 {
pinmux = <M2SCK_P25>, <M2MISO_P27>, <M2MOSI_P26>;
};
group2 {
pinmux = <NCE37_P37>;
drive-push-pull;
ambiq,iom-nce-module = <8>;
};
};
spi3_default: spi3_default {
group1 {
pinmux = <M3SCK_P31>, <M3MISO_P33>, <M3MOSI_P32>;
};
group2 {
pinmux = <NCE85_P85>;
drive-push-pull;
ambiq,iom-nce-module = <12>;
};
};
spi4_default: spi4_default {
group1 {
pinmux = <M4SCK_P34>, <M4MISO_P36>, <M4MOSI_P35>;
};
group2 {
pinmux = <NCE54_P54>;
drive-push-pull;
ambiq,iom-nce-module = <16>;
};
};
spi5_default: spi5_default {
group1 {
pinmux = <M5SCK_P47>, <M5MISO_P49>, <M5MOSI_P48>;
};
group2 {
pinmux = <NCE60_P60>;
drive-push-pull;
ambiq,iom-nce-module = <20>;
};
};
spi6_default: spi6_default {
group1 {
pinmux = <M6SCK_P61>, <M6MISO_P63>, <M6MOSI_P62>;
};
group2 {
pinmux = <NCE30_P30>;
drive-push-pull;
ambiq,iom-nce-module = <24>;
};
};
spi7_default: spi7_default {
group1 {
pinmux = <M7SCK_P22>, <M7MISO_P24>, <M7MOSI_P23>;
};
group2 {
pinmux = <NCE88_P88>;
drive-push-pull;
ambiq,iom-nce-module = <28>;
};
};
mspi0_default: mspi0_default{
group1 {

View file

@ -71,7 +71,7 @@
status = "okay";
};
&i2c0 {
&iom0 {
compatible = "ambiq,i2c";
pinctrl-0 = <&i2c0_default>;
pinctrl-names = "default";
@ -79,16 +79,15 @@
status = "okay";
};
&spi1 {
&iom1 {
compatible = "ambiq,spi";
pinctrl-0 = <&spi1_default>;
pinctrl-names = "default";
cs-gpios = <&gpio0_31 11 GPIO_ACTIVE_LOW>;
clock-frequency = <DT_FREQ_M(1)>;
status = "okay";
};
&spi4 {
&iom4 {
pinctrl-0 = <&spi4_default>;
pinctrl-names = "default";
status = "okay";

View file

@ -86,41 +86,82 @@
group1 {
pinmux = <M0SCK_P5>, <M0MISO_P7>, <M0MOSI_P6>;
};
group2 {
pinmux = <NCE72_P72>;
drive-push-pull;
ambiq,iom-nce-module = <0>;
};
};
spi1_default: spi1_default {
group1 {
pinmux = <M1SCK_P8>, <M1MISO_P10>, <M1MOSI_P9>;
};
group2 {
pinmux = <NCE11_P11>;
drive-strength = "0.5";
drive-push-pull;
ambiq,iom-nce-module = <4>;
};
};
spi2_default: spi2_default {
group1 {
pinmux = <M2SCK_P25>, <M2MISO_P27>, <M2MOSI_P26>;
};
group2 {
pinmux = <NCE37_P37>;
drive-push-pull;
ambiq,iom-nce-module = <8>;
};
};
spi3_default: spi3_default {
group1 {
pinmux = <M3SCK_P31>, <M3MISO_P33>, <M3MOSI_P32>;
};
group2 {
pinmux = <NCE85_P85>;
drive-push-pull;
ambiq,iom-nce-module = <12>;
};
};
spi4_default: spi4_default {
group1 {
pinmux = <M4SCK_P34>, <M4MISO_P36>, <M4MOSI_P35>;
};
group2 {
pinmux = <NCE79_P79>;
drive-push-pull;
ambiq,iom-nce-module = <16>;
};
};
spi5_default: spi5_default {
group1 {
pinmux = <M5SCK_P47>, <M5MISO_P49>, <M5MOSI_P48>;
};
group2 {
pinmux = <NCE60_P60>;
drive-push-pull;
ambiq,iom-nce-module = <20>;
};
};
spi6_default: spi6_default {
group1 {
pinmux = <M6SCK_P61>, <M6MISO_P63>, <M6MOSI_P62>;
};
group2 {
pinmux = <NCE30_P30>;
drive-push-pull;
ambiq,iom-nce-module = <24>;
};
};
spi7_default: spi7_default {
group1 {
pinmux = <M7SCK_P22>, <M7MISO_P24>, <M7MOSI_P23>;
};
group2 {
pinmux = <NCE88_P88>;
drive-push-pull;
ambiq,iom-nce-module = <28>;
};
};
mspi0_default: mspi0_default{
group1 {

View file

@ -82,7 +82,6 @@
compatible = "ambiq,spi";
pinctrl-0 = <&spi1_default>;
pinctrl-names = "default";
cs-gpios = <&gpio0_31 11 GPIO_ACTIVE_LOW>;
clock-frequency = <1000000>;
status = "okay";
};

View file

@ -104,7 +104,6 @@
blue-pwm-led = &blue_pwm_led;
spi = &spi2;
watchdog0 = &wdt0;
accel0 = &lsm9ds1;
};
};
@ -167,12 +166,6 @@ arduino_i2c: &i2c0 {
pinctrl-0 = <&i2c1_default>;
pinctrl-1 = <&i2c1_sleep>;
pinctrl-names = "default", "sleep";
lsm9ds1: lsm9ds1@6b {
compatible = "st,lsm9ds1";
reg = <0x6b>;
};
};
/* SPI2 is used because SPI1/0 shares conflicts with I2C1/0 */

View file

@ -1,4 +0,0 @@
# SPDX-License-Identifier: Apache-2.0
board_set_flasher_ifnset(probe-rs)
board_finalize_runner_args(probe-rs)

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 30 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

View file

@ -21,17 +21,12 @@ This board has following features:
* :abbr:`USB (Universal Serial Bus)`
* :abbr:`WDT (Watchdog Timer)`
.. figure:: img/ctcc_nrf52840_mpcie.webp
.. figure:: img/ctcc_nrf52840.webp
:align: center
:alt: CTCC nRF52840 mPCIe
:width: 300
:alt: CTCC nRF52840
ctcc/nrf52840 mPCie board
.. figure:: img/ctcc_nrf52840_m2.webp
:align: center
:alt: CTCC nRF52840 M.2
ctcc/nrf52840 M.2 board
ctcc/nrf52840 board target
More information about the board can be found at the
`ctcc_nrf52840 Website`_ and for SoC information: `Nordic Semiconductor Infocenter`_.

View file

@ -29,11 +29,8 @@ set(actinius_icarus_som_dk_ns_DEPRECATED
set(actinius_icarus_som_ns_DEPRECATED
actinius_icarus_som/nrf9160/ns
)
set(adafruit_feather_DEPRECATED
adafruit_feather_nrf52840_express
)
set(adafruit_feather_nrf52840_DEPRECATED
adafruit_feather_nrf52840_express
adafruit_feather
)
set(adafruit_itsybitsy_nrf52840_DEPRECATED
adafruit_itsybitsy

View file

@ -7,7 +7,7 @@ if BOARD_ESP32_DEVKITC_WROOM_ESP32_PROCPU
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -5,7 +5,7 @@ if BOARD_ESP32_DEVKITC_WROVER_ESP32_PROCPU
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -14,7 +14,7 @@ endchoice
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -5,7 +5,7 @@
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -5,7 +5,7 @@
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -100,8 +100,6 @@ Current Zephyr's ESP32-C6-DevKitC board supports the following features:
+------------+------------+-------------------------------------+
| SPI DMA | on-chip | spi |
+------------+------------+-------------------------------------+
| GDMA | on-chip | dma |
+------------+------------+-------------------------------------+
System requirements
*******************

View file

@ -9,7 +9,6 @@ supported:
- gpio
- watchdog
- uart
- dma
- spi
testing:
ignore_tags:

View file

@ -7,7 +7,7 @@ if BOARD_ESP32S3_DEVKITC_ESP32S3_PROCPU
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -7,7 +7,7 @@ if BOARD_ESP32S3_DEVKITM_ESP32S3_PROCPU
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -7,7 +7,7 @@ if BOARD_ESP_WROVER_KIT_ESP32_PROCPU
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -0,0 +1,15 @@
# Copyright (c) 2019 Nordic Semiconductor ASA.
# Copyright (c) 2021-2023 Laird Connectivity.
# SPDX-License-Identifier: Apache-2.0
if((CONFIG_BOARD_BL5340_DVK_NRF5340_CPUAPP OR CONFIG_BOARD_BL5340_DVK_NRF5340_CPUAPP_NS)
AND CONFIG_BOARD_ENABLE_CPUNET)
zephyr_library()
zephyr_library_sources(bl5340_dvk_nrf5340_cpunet_reset.c)
if(CONFIG_BUILD_WITH_TFM)
zephyr_library_include_directories(
$<TARGET_PROPERTY:tfm,TFM_BINARY_DIR>/api_ns/interface/include
)
endif()
endif()

View file

@ -21,9 +21,26 @@ config BOARD_ENABLE_DCDC_HV
select SOC_DCDC_NRF53X_HV
default y
config BOARD_ENABLE_CPUNET
bool "NRF53 Network MCU"
select SOC_NRF_GPIO_FORWARDER_FOR_NRF5340 if \
$(dt_compat_enabled,$(DT_COMPAT_NORDIC_NRF_GPIO_FORWARDER))
help
This option enables releasing the Network 'force off' signal, which
as a consequence will power up the Network MCU during system boot.
Additionally, the option allocates GPIO pins that will be used by UARTE
of the Network MCU.
Note: GPIO pin allocation can only be configured by the secure Application
MCU firmware, so when this option is used with the non-secure version of
the board, the application needs to take into consideration, that the
secure firmware image must already have configured GPIO allocation for the
Network MCU.
default y if (BT || NRF_802154_SER_HOST)
config DOMAIN_CPUNET_BOARD
string
default "bl5340_dvk/nrf5340/cpunet"
depends on BOARD_ENABLE_CPUNET
help
The board which will be used for CPUNET domain when creating a multi
image application where one or more images should be located on

View file

@ -111,7 +111,7 @@
compatible = "zephyr,mipi-dbi-spi";
reset-gpios = <&gpio0 6 GPIO_ACTIVE_LOW>;
dc-gpios = <&gpio0 12 GPIO_ACTIVE_HIGH>;
spi-dev = <&spi4>;
spi-dev = <&spi2>;
write-only;
#address-cells = <1>;
#size-cells = <0>;

View file

@ -0,0 +1,61 @@
/*
* Copyright (c) 2019-2021 Nordic Semiconductor ASA.
* Copyright (c) 2021-2023 Laird Connectivity
*
* SPDX-License-Identifier: Apache-2.0
*/
#include <zephyr/kernel.h>
#include <zephyr/init.h>
#include <zephyr/logging/log.h>
#include <soc.h>
#include <hal/nrf_reset.h>
LOG_MODULE_REGISTER(bl5340_dvk_cpuapp, CONFIG_LOG_DEFAULT_LEVEL);
#if defined(CONFIG_BT_CTLR_DEBUG_PINS_CPUAPP)
#include <../subsys/bluetooth/controller/ll_sw/nordic/hal/nrf5/debug.h>
#else
#define DEBUG_SETUP()
#endif
static void remoteproc_mgr_config(void)
{
#if !defined(CONFIG_TRUSTED_EXECUTION_NONSECURE) || defined(CONFIG_BUILD_WITH_TFM)
/* Route Bluetooth Controller Debug Pins */
DEBUG_SETUP();
#endif /* !defined(CONFIG_TRUSTED_EXECUTION_NONSECURE) || defined(CONFIG_BUILD_WITH_TFM) */
#if !defined(CONFIG_TRUSTED_EXECUTION_NONSECURE)
/* Retain nRF5340 Network MCU in Secure domain (bus
* accesses by Network MCU will have Secure attribute set).
*/
NRF_SPU->EXTDOMAIN[0].PERM = 1 << 4;
#endif /* !defined(CONFIG_TRUSTED_EXECUTION_NONSECURE) */
}
static int remoteproc_mgr_boot(void)
{
/* Secure domain may configure permissions for the Network MCU. */
remoteproc_mgr_config();
#if !defined(CONFIG_TRUSTED_EXECUTION_SECURE)
/*
* Building Zephyr with CONFIG_TRUSTED_EXECUTION_SECURE=y implies
* building also a Non-Secure image. The Non-Secure image will, in
* this case do the remainder of actions to properly configure and
* boot the Network MCU.
*/
/* Release the Network MCU, 'Release force off signal' */
nrf_reset_network_force_off(NRF_RESET, false);
LOG_DBG("Network MCU released.");
#endif /* !CONFIG_TRUSTED_EXECUTION_SECURE */
return 0;
}
SYS_INIT(remoteproc_mgr_boot, POST_KERNEL, CONFIG_KERNEL_INIT_PRIORITY_DEVICE);

View file

@ -35,11 +35,3 @@
jedec-id = [c2 20 19];
};
};
&gpio0 {
status = "okay";
};
&gpio1 {
status = "okay";
};

View file

@ -10,7 +10,6 @@ toolchain:
supported:
- netif
- spi
- gpio
testing:
ignore_tags:
- net

View file

@ -15,12 +15,12 @@ config ESP_SPIRAM
default y if !MCUBOOT
choice SPIRAM_TYPE
default SPIRAM_TYPE_ESPPSRAM32
default SPIRAM_TYPE_ESPPSRAM64
endchoice
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

View file

@ -4,6 +4,6 @@
# SPDX-License-Identifier: Apache-2.0
config BOARD_ODROID_GO
select SOC_ESP32_WROVER_E_N16R4
select SOC_ESP32_WROVER_E_N16R2
select SOC_ESP32_PROCPU if BOARD_ODROID_GO_ESP32_PROCPU
select SOC_ESP32_APPCPU if BOARD_ODROID_GO_ESP32_APPCPU

View file

@ -7,7 +7,7 @@ if BOARD_HELTEC_WIFI_LORA32_V2_ESP32_PROCPU
config HEAP_MEM_POOL_ADD_SIZE_BOARD
int
default $(UINT16_MAX) if WIFI && BT
default 65535 if WIFI && BT
default 51200 if WIFI
default 40960 if BT
default 4096

Some files were not shown because too many files have changed in this diff Show more