Skip to content

Commit

Permalink
manifest: Adding nRF Services library
Browse files Browse the repository at this point in the history
Adding nRF Services library to the hal-nordic repo

Signed-off-by: Rafal Dyla <rafal.dyla@nordicsemi.no>
  • Loading branch information
Rafal-Nordic committed Apr 10, 2024
1 parent 118e957 commit 486c552
Show file tree
Hide file tree
Showing 16 changed files with 1,710 additions and 1 deletion.
1 change: 1 addition & 0 deletions modules/hal_nordic/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ if (CONFIG_NRF_802154_RADIO_DRIVER OR CONFIG_NRF_802154_SERIALIZATION)
endif (CONFIG_NRF_802154_RADIO_DRIVER OR CONFIG_NRF_802154_SERIALIZATION)

add_subdirectory_ifdef(CONFIG_HAS_NRFX nrfx)
add_subdirectory_ifdef(CONFIG_NRF_HAS_NRFS nrfs)

if(CONFIG_NRF_REGTOOL_GENERATE_UICR)
list(APPEND nrf_regtool_components GENERATE:UICR)
Expand Down
1 change: 1 addition & 0 deletions modules/hal_nordic/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -235,5 +235,6 @@ endif # NRF_802154_RADIO_DRIVER || NRF_802154_SERIALIZATION

endmenu # HAS_NORDIC_DRIVERS

rsource "nrfs/Kconfig"
rsource "nrfx/Kconfig"
rsource "Kconfig.nrf_regtool"
12 changes: 12 additions & 0 deletions modules/hal_nordic/nrfs/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

if(CONFIG_NRFS)
add_subdirectory(${ZEPHYR_CURRENT_MODULE_DIR}/nrfs nrfs)
if(CONFIG_NRFS_LOCAL_DOMAIN)
zephyr_sources(backends/nrfs_backend_ipc_service_lite.c)
endif()
zephyr_include_directories(${CMAKE_CURRENT_SOURCE_DIR}/backends)
zephyr_include_directories_ifdef(CONFIG_NRFS_DVFS_LOCAL_DOMAIN ${CMAKE_CURRENT_SOURCE_DIR}/dvfs)
add_subdirectory_ifdef(CONFIG_NRFS_DVFS_LOCAL_DOMAIN dvfs)
endif()
121 changes: 121 additions & 0 deletions modules/hal_nordic/nrfs/Kconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
# Copyright (c) 2024 Nordic Semiconductor ASA
# SPDX-License-Identifier: Apache-2.0

config NRF_HAS_NRFS
bool

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

menu "nRF Services"
depends on NRF_HAS_NRFS

config NRFS
bool "nRF Services Support"
help
This option enables the nRF Services library

config NRFS_LOCAL_DOMAIN
bool "nRF Services Local Domain Support"
depends on NRFS
help
This option enables the nRF Services Local Domain libraries

config NRFS_BACKEND_IPC_SERVICE
bool "IPC service backend for NRFS"
depends on NRFS
imply IPC_SERVICE
imply IPC_SERVICE_BACKEND_ICMSG
imply MBOX
imply EVENTS
imply REBOOT
help
This option enables transport protocol for the NRFS

config NRFS_DVFS_LOCAL_DOMAIN
bool "Local domain that supports DVFS"
depends on NRFS
depends on NRFS_LOCAL_DOMAIN
default y if SOC_NRF54H20_CPUAPP

menu "Enabled Services"
depends on NRFS
module = NRFS
module-str = nRF-Services
source "subsys/logging/Kconfig.template.log_config"

config RESET_SERVICE_ENABLED
bool "Reset service"
depends on NRFS_HAS_RESET_SERVICE
default n

config MRAM_SERVICE_ENABLED
bool "MRAM latency service"
depends on NRFS_HAS_MRAM_SERVICE
default y

config TEMP_SERVICE_ENABLED
bool "Temperature service"
depends on NRFS_HAS_TEMP_SERVICE
default y

config VBUS_DETECTOR_SERVICE_ENABLED
bool "VBUS detector for the USB peripheral"
depends on NRFS_HAS_VBUS_DETECTOR_SERVICE
default y

config CONST_LATENCY_SERVICE_ENABLED
bool "DPPI constant latency service"
depends on NRFS_HAS_CONST_LATENCY_SERVICE
default y

config PMIC_SERVICE_ENABLED
bool "PMIC service"
depends on NRFS_HAS_PMIC_SERVICE
default n

config DVFS_SERVICE_ENABLED
bool "DVFS service"
depends on NRFS_HAS_DVFS_SERVICE
default y if SOC_NRF54H20_CPUAPP
default n

config DIAG_SERVICE_ENABLED
bool "System Diagnostics service (only for development purposes)"
depends on NRFS_HAS_DIAG_SERVICE
default n

config CLOCK_SERVICE_ENABLED
bool "Clock service"
depends on NRFS_HAS_CLOCK_SERVICE
default y
endmenu

rsource "backends/Kconfig"
rsource "dvfs/Kconfig"

endmenu
28 changes: 28 additions & 0 deletions modules/hal_nordic/nrfs/backends/Kconfig
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"
depends on NRFS
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 divers/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
Loading

0 comments on commit 486c552

Please sign in to comment.