Skip to content
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
5 changes: 0 additions & 5 deletions apps/gateway_lte/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -25,11 +25,6 @@ configdefault LTE_PSM_REQ
default n
configdefault INFUSE_NRF_MODEM_DATA_PROFILE_DEFAULT
default 4
# Shuffle memory to prioritise TX buffers
configdefault NRF_MODEM_LIB_SHMEM_TX_SIZE
default 14336
configdefault NRF_MODEM_LIB_SHMEM_RX_SIZE
default 8192

#
# Defaults for offloaded modem_cellular gateways
Expand Down
5 changes: 2 additions & 3 deletions cmake/sdk_nrf.cmake
Original file line number Diff line number Diff line change
@@ -1,11 +1,10 @@
# SDK-NRF helpers

if (NOT CONFIG_BUILD_WITH_TFM)
if (CONFIG_NRF_OBERON)
if(NOT CONFIG_BUILD_WITH_TFM)
if(CONFIG_NRF_OBERON)
# Link Oberon MbedTLS backend
add_library(mbedcrypto_common INTERFACE)
target_link_libraries(mbedcrypto_common INTERFACE
mbedcrypto_oberon_mbedtls_imported
mbedcrypto_oberon_imported
)
target_include_directories(mbedcrypto_common
Expand Down
26 changes: 22 additions & 4 deletions dts/common/nordic/modem_shmem.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,8 @@
* - Lowest 64 kB SRAM allocated to Secure image (sram0_s).
* - Upper 192 kB SRAM allocated to Non-Secure image (sram0_ns).
* Of the memory allocated to the Non-Secure image
* - 24 kB SRAM reserved for and used by the modem library (sram0_ns_modem).
* - 168 kB allocated to the application (sram0_ns_app).
* - 18 kB SRAM reserved for and used by the modem library (sram0_ns_modem).
* - 174 kB allocated to the application (sram0_ns_app).
*/
sram0_s: sram@0 {
/* Secure image memory */
Expand All @@ -31,12 +31,30 @@

sram0_ns_modem: sram0_ns@0 {
/* Modem (shared) memory */
reg = <0x0 DT_SIZE_K(24)>;
reg = <0x0 DT_SIZE_K(18)>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x0 DT_SIZE_K(18)>;

cpuapp_cpucell_ipc_shm_ctrl: sram0_ns_modem@0 {
/* Modem IPC control */
reg = <0x0 0x728>;
};

cpuapp_cpucell_ipc_shm_heap: sram0_ns_modem@728 {
/* Modem IPC transmit */
reg = <0x728 0x20d8>;
};

cpucell_cpuapp_ipc_shm_heap: sram0_ns_modem@2800 {
/* Modem IPC receive */
reg = <0x2800 0x2000>;
};
};

sram0_ns_app: sram0_ns@6000 {
/* Non-Secure application memory */
reg = <0x6000 DT_SIZE_K(168)>;
reg = <0x6000 DT_SIZE_K(174)>;
};
};
};
45 changes: 45 additions & 0 deletions dts/common/nordic/modem_shmem_trace.dtsi
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
/*
* Copyright (c) 2026 Embeint Holdings Pty Ltd
* SPDX-License-Identifier: FSL-1.1-ALv2
*/


/* Override default SRAM planning */
/delete-node/ &sram0_ns_modem;
/delete-node/ &sram0_ns_app;

/* An extra 16kB of SRAM is required by the modem for trace functionality */
&sram0_ns {
sram0_ns_modem: sram0_ns@0 {
/* Modem (shared) memory */
reg = <0x0 DT_SIZE_K(34)>;
#address-cells = <1>;
#size-cells = <1>;
ranges = <0x0 0x0 DT_SIZE_K(34)>;

cpuapp_cpucell_ipc_shm_ctrl: sram0_ns_modem@0 {
/* Modem IPC control */
reg = <0x0 0x728>;
};

cpuapp_cpucell_ipc_shm_heap: sram0_ns_modem@728 {
/* Modem IPC transmit */
reg = <0x728 0x20d8>;
};

cpucell_cpuapp_ipc_shm_heap: sram0_ns_modem@2800 {
/* Modem IPC receive */
reg = <0x2800 0x2000>;
};

cpucell_cpuapp_ipc_shm_trace: sram0_ns_modem@4800 {
/* Modem IPC receive */
reg = <0x4800 DT_SIZE_K(16)>;
};
};

sram0_ns_app: sram0_ns@6000 {
/* Non-Secure application memory */
reg = <0x6000 DT_SIZE_K(158)>;
};
};
4 changes: 2 additions & 2 deletions include/infuse/lib/nrf_modem_lib_sim.h
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@
#ifndef INFUSE_SDK_INCLUDE_INFUSE_LIB_NRF_MODEM_LIB_SIM_H_
#define INFUSE_SDK_INCLUDE_INFUSE_LIB_NRF_MODEM_LIB_SIM_H_

#include <modem/pdn.h>
#include <modem/lte_lc.h>

#ifdef __cplusplus
extern "C" {
Expand All @@ -22,7 +22,7 @@ extern "C" {
* @param apn Access Point Name
* @param family IP family
*/
void nrf_modem_lib_sim_default_pdn_ctx(const char **apn, enum pdn_fam *family);
void nrf_modem_lib_sim_default_pdn_ctx(const char **apn, enum lte_lc_pdn_family *family);

/**
* @brief Set reported signal strenth and quality
Expand Down
14 changes: 10 additions & 4 deletions kconfig/Kconfig.defaults.nrf
Original file line number Diff line number Diff line change
Expand Up @@ -42,10 +42,6 @@ configdefault MODEM_KEY_MGMT
default y if INFUSE_SECURITY
configdefault NRF_MODEM_LIB_NET_IF_APPLICATION_ERROR_HANDLER
default y if INFUSE_NRF_MODEM_MONITOR
configdefault NRF_MODEM_LIB_SHMEM_RX_SIZE
default 12288
configdefault NRF_MODEM_LIB_SHMEM_TX_SIZE
default 10240
choice NRF_MODEM_LIB_ON_FAULT
default NRF_MODEM_LIB_ON_FAULT_APPLICATION_SPECIFIC
endchoice
Expand Down Expand Up @@ -216,10 +212,20 @@ config ZEPHYR_NRF_MODULE
bool
config SOC_NRF54LV10A
bool
config SOC_NRF54LS05A
bool
config SOC_NRF54LS05A_CPUAPP
bool
config SOC_NRF54LS05B
bool
config SOC_NRF54LS05B_CPUAPP
bool
config SOC_NRF54LV10A
bool
config SOC_NRF54LV10A_CPUAPP
bool
config SOC_NRF54LV10A_CPUFLPR
bool
config NORDIC_SECURITY_BACKEND
bool
config UNITY
Expand Down
10 changes: 5 additions & 5 deletions lib/modem_monitor/modem_nrf9x/nrf_modem_lib_sim.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
#include <nrf_modem_at.h>
#include <modem/lte_lc.h>
#include <modem/nrf_modem_lib.h>
#include <modem/pdn.h>

LOG_MODULE_REGISTER(nrf_modem_sim, LOG_LEVEL_INF);

Expand Down Expand Up @@ -167,11 +166,12 @@ void nrf_modem_fault_handler(struct nrf_modem_fault_info *fault_info)
}

static char pdn_default_apn[32];
static enum pdn_fam pdn_default_fam;
static enum lte_lc_pdn_family pdn_default_fam;

int pdn_ctx_configure(uint8_t cid, const char *apn, enum pdn_fam family, struct pdn_pdp_opt *opts)
int pdn_ctx_configure(uint8_t cid, const char *apn, enum lte_lc_pdn_family family,
struct lte_lc_pdn_pdp_context_opts *opt)
{
ARG_UNUSED(opts);
ARG_UNUSED(opt);

if (cid != 0) {
return 0;
Expand All @@ -181,7 +181,7 @@ int pdn_ctx_configure(uint8_t cid, const char *apn, enum pdn_fam family, struct
return 0;
}

void nrf_modem_lib_sim_default_pdn_ctx(const char **apn, enum pdn_fam *family)
void nrf_modem_lib_sim_default_pdn_ctx(const char **apn, enum lte_lc_pdn_family *family)
{
*apn = pdn_default_apn;
*family = pdn_default_fam;
Expand Down
1 change: 0 additions & 1 deletion lib/modem_monitor/modem_nrf9x/nrf_modem_monitor.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
#include <infuse/tdf/util.h>

#include <modem/at_monitor.h>
#include <modem/pdn.h>
#include <modem/nrf_modem_lib.h>
#include <modem/lte_lc.h>
#include <modem/modem_info.h>
Expand Down
9 changes: 9 additions & 0 deletions samples/nrf91x1_emc_shell/app.overlay
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
/*
* Copyright (c) 2026 Embeint Holdings Pty Ltd
* SPDX-License-Identifier: FSL-1.1-ALv2
*
* Infuse snippet not included in build, but we still need
* the devicetree based memory configuration.
*/

#include <common/nordic/modem_shmem.dtsi>
2 changes: 1 addition & 1 deletion snippets/modem_trace/snippet.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ boards:
append:
EXTRA_DTC_OVERLAY_FILE: trace_uart1.overlay
EXTRA_CONF_FILE: trace_uart1.conf
tauro(2)?/nrf9151/ns:
/tauro(2)?/nrf9151/ns/:
append:
EXTRA_DTC_OVERLAY_FILE: trace_rtt.overlay
EXTRA_CONF_FILE: trace_rtt.conf
Expand Down
16 changes: 1 addition & 15 deletions snippets/modem_trace/trace_shmem.dtsi
Original file line number Diff line number Diff line change
Expand Up @@ -4,18 +4,4 @@
* SPDX-License-Identifier: FSL-1.1-ALv2
*/

/* Allocate more memory to the modem library to enable tracing */
/delete-node/ &sram0_ns_modem;
/delete-node/ &sram0_ns_app;

&sram0_ns {
sram0_ns_modem: sram0_ns@0 {
/* Modem (shared) memory */
reg = <0x0 DT_SIZE_K(40)>;
};

sram0_ns_app: sram0_ns@a000 {
/* Non-Secure application memory */
reg = <0xa000 DT_SIZE_K(152)>;
};
};
#include <common/nordic/modem_shmem_trace.dtsi>
7 changes: 3 additions & 4 deletions tests/net/nrf_modem_lib/src/main.c
Original file line number Diff line number Diff line change
Expand Up @@ -27,7 +27,6 @@
#include <nrf_modem.h>
#include <modem/nrf_modem_lib.h>
#include <modem/lte_lc.h>
#include <modem/pdn.h>

K_SEM_DEFINE(reboot_request, 0, 1);

Expand Down Expand Up @@ -161,7 +160,7 @@ ZTEST(infuse_nrf_modem_monitor, test_integration)
struct lte_modem_network_state net_state;
struct nrf_modem_fault_info fault_info = {0};
char ipv4_addr[NET_IPV4_ADDR_LEN] = {0};
enum pdn_fam default_family;
enum lte_lc_pdn_family default_family;
const char *default_apn;
struct net_if_addr *added;
int rc;
Expand Down Expand Up @@ -213,14 +212,14 @@ ZTEST(infuse_nrf_modem_monitor, test_integration)
zassert_equal(LTE_LC_SYSTEM_MODE_LTEM_NBIOT_GPS, net_modes.modes);
zassert_equal(CONFIG_LTE_MODE_PREFERENCE_VALUE, net_modes.prefer);
kv_store_read(KV_KEY_LTE_PDP_CONFIG, &pdp_config, sizeof(pdp_config));
zassert_equal(PDN_FAM_IPV4V6, pdp_config.family);
zassert_equal(LTE_LC_PDN_FAM_IPV4V6, pdp_config.family);
zassert_mem_equal(CONFIG_INFUSE_MODEM_MONITOR_DEFAULT_PDP_APN, pdp_config.apn.value,
strlen(CONFIG_INFUSE_MODEM_MONITOR_DEFAULT_PDP_APN));

nrf_modem_lib_sim_default_pdn_ctx(&default_apn, &default_family);
zassert_mem_equal(CONFIG_INFUSE_MODEM_MONITOR_DEFAULT_PDP_APN, default_apn,
strlen(CONFIG_INFUSE_MODEM_MONITOR_DEFAULT_PDP_APN));
zassert_equal(PDN_FAM_IPV4V6, default_family);
zassert_equal(LTE_LC_PDN_FAM_IPV4V6, default_family);

lte_modem_monitor_network_state(&net_state);
zassert_equal(CELLULAR_REGISTRATION_NOT_REGISTERED, net_state.nw_reg_status);
Expand Down
4 changes: 2 additions & 2 deletions west.yml
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@ manifest:

projects:
- name: zephyr
revision: fe7450e87bbf6754e1d36ffb144f85e92ebcb5f8
revision: 92e97b3f42b59c633c30a476659043d92cf79fd0
# Limit imported repositories to reduce clone time
import:
name-allowlist:
Expand Down Expand Up @@ -46,7 +46,7 @@ manifest:
path: bootloader/mcuboot
- name: sdk-nrf
path: modules/nrfconnect/sdk-nrf
revision: 83ef0d4927200d63a10fe4017f2ebf61a7200b93
revision: 03a09cfce8cf1a2ff956badae7efdd3fcfed7d8f
import: true
- name: memfault-firmware-sdk
path: modules/lib/memfault
Expand Down