forked from zephyrproject-rtos/zephyr
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
manifest: Adding nRF Services library
Adding nRF Services library to the hal-nordic repo Signed-off-by: Rafal Dyla <[email protected]>
- Loading branch information
1 parent
262af56
commit dd46b69
Showing
19 changed files
with
1,464 additions
and
5 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
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
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
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
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
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,41 @@ | ||
# Copyright (c) 2024 Nordic Semiconductor ASA | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
zephyr_library() | ||
|
||
if(CONFIG_NRFS) | ||
if(NOT DEFINED NRFS_DIR) | ||
set(NRFS_DIR ${ZEPHYR_CURRENT_MODULE_DIR}/nrfs CACHE PATH "nrfs directory") | ||
endif() | ||
|
||
set(INC_DIR ${NRFS_DIR}/include) | ||
set(SRC_DIR ${NRFS_DIR}/src) | ||
set(HELPERS_DIR ${NRFS_DIR}/helpers) | ||
|
||
zephyr_include_directories(${INC_DIR}) | ||
zephyr_include_directories(${INC_DIR}/services) | ||
zephyr_include_directories(${HELPERS_DIR}) | ||
zephyr_include_directories(.) | ||
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/backends) | ||
zephyr_include_directories_ifdef(CONFIG_NRFS_DVFS_LOCAL_DOMAIN ${CMAKE_CURRENT_SOURCE_DIR}/dvfs) | ||
|
||
zephyr_library_sources(${HELPERS_DIR}/dvfs_oppoint.c) | ||
|
||
if(CONFIG_NRFS_LOCAL_DOMAIN) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_CLOCK_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_clock.c) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_DIAG_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_diag.c) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_DVFS_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_dvfs.c) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_MRAM_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_mram.c) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_PMIC_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_pmic.c) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_RESET_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_reset.c) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_TEMP_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_temp.c) | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_VBUS_DETECTOR_SERVICE_ENABLED ${SRC_DIR}/services/nrfs_usb.c) | ||
zephyr_library_sources(${SRC_DIR}/internal/nrfs_dispatcher.c) | ||
add_subdirectory_ifdef(CONFIG_NRFS_DVFS_LOCAL_DOMAIN dvfs) | ||
|
||
if(CONFIG_NRFS_DIAG_SERVICE_ENABLED) | ||
message(WARNING "This service is for Nordic Semiconductor INTERNAL purposes ONLY. Use it with caution due to risk of hardware damage!") | ||
endif() | ||
endif() | ||
zephyr_library_sources_ifdef(CONFIG_NRFS_BACKEND_IPC_SERVICE backends/nrfs_backend_ipc_service.c) | ||
endif() |
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,122 @@ | ||
# Copyright (c) 2024 Nordic Semiconductor ASA | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
config HAS_NRFS | ||
bool | ||
|
||
menu "nRF Services" | ||
depends on HAS_NRFS | ||
|
||
config NRFS_HAS_CLOCK_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_CONST_LATENCY_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_DIAG_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_DVFS_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_MRAM_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_PMIC_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_RESET_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_TEMP_SERVICE | ||
bool | ||
|
||
config NRFS_HAS_VBUS_DETECTOR_SERVICE | ||
bool | ||
|
||
config NRFS | ||
bool "nRF Services Support" | ||
select NRFS_LOCAL_DOMAIN if (SOC_NRF54H20_CPUAPP || SOC_NRF54H20_CPURAD) | ||
depends on HAS_NRFS | ||
help | ||
This option enables the nRF Services library. | ||
|
||
if NRFS | ||
|
||
config NRFS_LOCAL_DOMAIN | ||
bool "nRF Services Local Domain Support" | ||
select NRFS_BACKEND_IPC_SERVICE | ||
help | ||
This option enables the nRF Services Local Domain libraries. | ||
|
||
config NRFS_BACKEND_IPC_SERVICE | ||
bool "IPC service backend for NRFS" | ||
depends on $(dt_alias_enabled,ipc-to-cpusys) | ||
select IPC_SERVICE | ||
select MBOX | ||
select EVENTS | ||
select REBOOT | ||
help | ||
This option enables transport protocol for the NRFS. | ||
|
||
config NRFS_DVFS_LOCAL_DOMAIN | ||
bool "Local domain that supports DVFS" | ||
depends on NRFS_LOCAL_DOMAIN | ||
depends on NRFS_HAS_DVFS_SERVICE | ||
default y if NRFS_DVFS_SERVICE_ENABLED | ||
|
||
menu "Enabled Services" | ||
|
||
module = NRFS | ||
module-str = nRF-Services | ||
source "subsys/logging/Kconfig.template.log_config" | ||
|
||
config NRFS_RESET_SERVICE_ENABLED | ||
bool "Reset service" | ||
depends on NRFS_HAS_RESET_SERVICE | ||
|
||
config NRFS_MRAM_SERVICE_ENABLED | ||
bool "MRAM latency service" | ||
depends on NRFS_HAS_MRAM_SERVICE | ||
|
||
config NRFS_TEMP_SERVICE_ENABLED | ||
bool "Temperature service" | ||
depends on NRFS_HAS_TEMP_SERVICE | ||
default y | ||
|
||
config NRFS_VBUS_DETECTOR_SERVICE_ENABLED | ||
bool "VBUS detector for the USB peripheral" | ||
depends on NRFS_HAS_VBUS_DETECTOR_SERVICE | ||
default y | ||
|
||
config NRFS_CONST_LATENCY_SERVICE_ENABLED | ||
bool "DPPI constant latency service" | ||
depends on NRFS_HAS_CONST_LATENCY_SERVICE | ||
default y | ||
|
||
config NRFS_PMIC_SERVICE_ENABLED | ||
bool "PMIC service" | ||
depends on NRFS_HAS_PMIC_SERVICE | ||
|
||
config NRFS_DVFS_SERVICE_ENABLED | ||
bool "DVFS service" | ||
depends on NRFS_HAS_DVFS_SERVICE | ||
default y if SOC_NRF54H20_CPUAPP | ||
|
||
config NRFS_DIAG_SERVICE_ENABLED | ||
bool "System Diagnostics service (only for development purposes)" | ||
depends on NRFS_HAS_DIAG_SERVICE | ||
|
||
config NRFS_CLOCK_SERVICE_ENABLED | ||
bool "Clock service" | ||
depends on NRFS_HAS_CLOCK_SERVICE | ||
default y | ||
endmenu | ||
|
||
rsource "backends/Kconfig" | ||
if NRFS_DVFS_LOCAL_DOMAIN | ||
rsource "dvfs/Kconfig" | ||
endif # NRFS_DVFS_LOCAL_DOMAIN | ||
|
||
endif # NRFS | ||
endmenu |
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,28 @@ | ||
# Copyright (c) 2024 Nordic Semiconductor ASA | ||
# SPDX-License-Identifier: Apache-2.0 | ||
|
||
|
||
menu "NRFS backend settings" | ||
|
||
module = NRFS_BACKEND | ||
module-str = NRFS backend | ||
source "subsys/logging/Kconfig.template.log_config" | ||
|
||
config NRFS_BACKEND_IPC_SERVICE_LITE_INIT_PRIO | ||
int "Initialization priority for NRFS IPC backend" | ||
default 51 | ||
help | ||
This should be higher than priority of other drivers/subsystems | ||
used by NRFS backend. For example MBOX_INIT_PRIORITY which is 50. | ||
|
||
config NRFS_MAX_BACKEND_PACKET_SIZE | ||
int "Maximum IPC data packet size in bytes" | ||
range 8 128 | ||
default 32 | ||
|
||
config NRFS_BACKEND_TX_MSG_QUEUE_SIZE | ||
int "Size of TX buffer message queue size" | ||
range 1 16 | ||
default 8 | ||
|
||
endmenu |
Oops, something went wrong.