55 #include "nrf_error_soc.h"
65 #define SOC_SVC_BASE (0x20)
66 #define SOC_SVC_BASE_NOT_AVAILABLE (0x2B)
69 #define NRF_RADIO_NOTIFICATION_INACTIVE_GUARANTEED_TIME_US (62)
72 #define NRF_RADIO_MINIMUM_TIMESLOT_LENGTH_EXTENSION_TIME_US (200)
74 #define SOC_ECB_KEY_LENGTH (16)
75 #define SOC_ECB_CLEARTEXT_LENGTH (16)
76 #define SOC_ECB_CIPHERTEXT_LENGTH (SOC_ECB_CLEARTEXT_LENGTH)
78 #define SD_EVT_IRQn (SWI2_EGU2_IRQn)
79 #define SD_EVT_IRQHandler (SWI2_EGU2_IRQHandler)
81 #define RADIO_NOTIFICATION_IRQn (SWI1_EGU1_IRQn)
82 #define RADIO_NOTIFICATION_IRQHandler (SWI1_EGU1_IRQHandler)
84 #define NRF_RADIO_LENGTH_MIN_US (100)
85 #define NRF_RADIO_LENGTH_MAX_US (100000)
87 #define NRF_RADIO_DISTANCE_MAX_US (128000000UL - 1UL)
89 #define NRF_RADIO_EARLIEST_TIMEOUT_MAX_US (128000000UL - 1UL)
91 #define NRF_RADIO_START_JITTER_US (2)
102 SD_PPI_CHANNEL_ENABLE_SET,
103 SD_PPI_CHANNEL_ENABLE_CLR,
104 SD_PPI_CHANNEL_ASSIGN,
105 SD_PPI_GROUP_TASK_ENABLE,
106 SD_PPI_GROUP_TASK_DISABLE,
115 SD_RAND_APPLICATION_POOL_CAPACITY_GET,
116 SD_RAND_APPLICATION_BYTES_AVAILABLE_GET,
117 SD_RAND_APPLICATION_VECTOR_GET,
120 SD_POWER_RESET_REASON_GET,
121 SD_POWER_RESET_REASON_CLR,
123 SD_POWER_POF_THRESHOLD_SET,
124 SD_POWER_RAM_POWER_SET,
125 SD_POWER_RAM_POWER_CLR,
126 SD_POWER_RAM_POWER_GET,
127 SD_POWER_GPREGRET_SET,
128 SD_POWER_GPREGRET_CLR,
129 SD_POWER_GPREGRET_GET,
130 SD_POWER_DCDC_MODE_SET,
132 SD_CLOCK_HFCLK_REQUEST,
133 SD_CLOCK_HFCLK_RELEASE,
134 SD_CLOCK_HFCLK_IS_RUNNING,
135 SD_RADIO_NOTIFICATION_CFG_SET,
136 SD_ECB_BLOCK_ENCRYPT,
137 SD_ECB_BLOCKS_ENCRYPT,
138 SD_RADIO_SESSION_OPEN,
139 SD_RADIO_SESSION_CLOSE,
274 NRF_EVT_NUMBER_OF_EVTS
302 uint32_t distance_us;
309 uint8_t request_type;
320 uint8_t callback_action;
357 soc_ecb_cleartext_t cleartext;
358 soc_ecb_ciphertext_t ciphertext;
365 soc_ecb_key_t
const * p_key;
366 soc_ecb_cleartext_t
const * p_cleartext;
367 soc_ecb_ciphertext_t * p_ciphertext;
390 SVCALL(SD_MUTEX_ACQUIRE, uint32_t,
sd_mutex_acquire(nrf_mutex_t * p_mutex));
398 SVCALL(SD_MUTEX_RELEASE, uint32_t,
sd_mutex_release(nrf_mutex_t * p_mutex));
511 SVCALL(SD_POWER_GPREGRET_SET, uint32_t,
sd_power_gpregret_set(uint32_t gpregret_id, uint32_t gpregret_msk));
520 SVCALL(SD_POWER_GPREGRET_CLR, uint32_t,
sd_power_gpregret_clr(uint32_t gpregret_id, uint32_t gpregret_msk));
529 SVCALL(SD_POWER_GPREGRET_GET, uint32_t,
sd_power_gpregret_get(uint32_t gpregret_id, uint32_t *p_gpregret));
637 SVCALL(SD_PPI_CHANNEL_ASSIGN, uint32_t,
sd_ppi_channel_assign(uint8_t channel_num,
const volatile void * evt_endpoint,
const volatile void * task_endpoint));
665 SVCALL(SD_PPI_GROUP_ASSIGN, uint32_t,
sd_ppi_group_assign(uint8_t group_num, uint32_t channel_msk));
675 SVCALL(SD_PPI_GROUP_GET, uint32_t,
sd_ppi_group_get(uint8_t group_num, uint32_t * p_channel_msk));
750 SVCALL(SD_EVT_GET, uint32_t,
sd_evt_get(uint32_t * p_evt_id));
761 SVCALL(SD_TEMP_GET, uint32_t,
sd_temp_get(int32_t * p_temp));
796 SVCALL(SD_FLASH_WRITE, uint32_t,
sd_flash_write(uint32_t * p_dst, uint32_t
const * p_src, uint32_t size));
844 SVCALL(SD_FLASH_PROTECT, uint32_t,
sd_flash_protect(uint32_t block_cfg0, uint32_t block_cfg1, uint32_t block_cfg2, uint32_t block_cfg3));
918 #endif // NRF_SOC_H__