1 /* 2 * Copyright (c) 2020 Nordic Semiconductor ASA 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 /* We want to use all real nRFx HAL definitions, while allowing some of them to be overridden. 8 * We do this by including here all real nRFx HAL provided functions, but defining them as "weak". 9 * This allows the HW models to provide their own version when needed due to HW models differences. 10 */ 11 #define NRF_DONT_DECLARE_ONLY 12 #define NRF_STATIC_INLINE __attribute__((weak)) 13 14 #include "nrfx.h" 15 16 #if defined(NRF54L15_XXAA) 17 /* These are not yet supported by the HAL (fail to build), even though the MDK claims are present */ 18 #undef PDM_PRESENT 19 #endif 20 21 #ifdef AAR_PRESENT 22 #include "hal/nrf_aar.h" 23 #endif 24 25 #ifdef ACL_PRESENT 26 #include "hal/nrf_acl.h" 27 #endif 28 29 #ifdef ADC_PRESENT 30 #include "hal/nrf_adc.h" 31 #endif 32 33 #ifdef BPROT_PRESENT 34 #include "hal/nrf_bprot.h" 35 #endif 36 37 #ifdef CACHE_PRESENT 38 #include "hal/nrf_cache.h" 39 #endif 40 41 #ifdef CCM_PRESENT 42 #include "hal/nrf_ccm.h" 43 #endif 44 45 #ifdef CLOCK_PRESENT 46 #include "hal/nrf_clock.h" 47 #endif 48 49 #include "hal/nrf_common.h" 50 51 #ifdef COMP_PRESENT 52 #include "hal/nrf_comp.h" 53 #endif 54 55 #ifdef CRACEN_PRESENT 56 #include "hal/nrf_cracen.h" 57 #endif 58 59 #if defined(CRACEN_PRESENT) && ( (defined(NRFX_RELEASE_VER_AT_LEAST) && NRFX_RELEASE_VER_AT_LEAST(3,10,0)) ) 60 #include "hal/nrf_cracen_rng.h" 61 #include "hal/nrf_cracen_cm.h" 62 #endif 63 64 #ifdef NRF_DCNF_NS 65 #include "hal/nrf_dcnf.h" 66 #endif 67 68 #ifdef DPPI_PRESENT 69 #include "hal/nrf_dppi.h" 70 #endif 71 72 #ifdef ECB_PRESENT 73 #include "hal/nrf_ecb.h" 74 #endif 75 76 #ifdef EGU_PRESENT 77 #include "hal/nrf_egu.h" 78 #endif 79 80 #include "hal/nrf_ficr.h" 81 82 #ifdef GLITCHDET_PRESENT 83 #include "hal/nrf_glitchdet.h" 84 #endif 85 86 #ifdef GPIO_PRESENT 87 #include "hal/nrf_gpio.h" 88 #endif 89 90 #ifdef GPIOTE_PRESENT 91 #include "hal/nrf_gpiote.h" 92 #endif 93 94 #ifdef GRTC_PRESENT 95 #include "hal/nrf_grtc.h" 96 #endif 97 98 #ifdef I2S_PRESENT 99 #include "hal/nrf_i2s.h" 100 #endif 101 102 #ifdef IPC_PRESENT 103 #include "hal/nrf_ipc.h" 104 #endif 105 106 #ifdef KMU_PRESENT 107 #include "hal/nrf_kmu.h" 108 #endif 109 110 #ifdef LPCOMP_PRESENT 111 #include "hal/nrf_lpcomp.h" 112 #endif 113 114 #ifdef MEMCONF_PRESENT 115 #include "hal/nrf_memconf.h" 116 #endif 117 118 #ifdef MPC_PRESENT 119 #include "hal/nrf_mpc.h" 120 #endif 121 122 #ifdef MUTEX_PRESENT 123 #include "hal/nrf_mutex.h" 124 #endif 125 126 #ifdef MWU_PRESENT 127 #include "hal/nrf_mwu.h" 128 #endif 129 130 #ifdef NFCT_PRESENT 131 #include "hal/nrf_nfct.h" 132 #endif 133 134 #ifdef NVMC_PRESENT 135 #include "hal/nrf_nvmc.h" 136 #endif 137 138 #ifdef OSCILLATORS_PRESENT 139 #include "hal/nrf_oscillators.h" 140 #endif 141 142 #ifdef PDM_PRESENT 143 #include "hal/nrf_pdm.h" 144 #endif 145 146 #ifdef POWER_PRESENT 147 #include "hal/nrf_power.h" 148 #endif 149 150 #ifdef PPI_PRESENT 151 #include "hal/nrf_ppi.h" 152 #endif 153 154 #ifdef PPIB_PRESENT 155 #include "hal/nrf_ppib.h" 156 #endif 157 158 #ifdef PWM_PRESENT 159 #include "hal/nrf_pwm.h" 160 #endif 161 162 #ifdef QDEC_PRESENT 163 #include "hal/nrf_qdec.h" 164 #endif 165 166 #ifdef QSPI_PRESENT 167 #include "hal/nrf_qspi.h" 168 #endif 169 170 #ifdef RADIO_PRESENT 171 #include "hal/nrf_radio.h" 172 #endif 173 174 #ifdef REGULATORS_PRESENT 175 #include "hal/nrf_regulators.h" 176 #endif 177 178 #ifdef NRF_RESET /* The MDK lacks a RESET_PRESENT macro */ 179 #include "hal/nrf_reset.h" 180 #endif 181 182 #ifdef RNG_PRESENT 183 #include "hal/nrf_rng.h" 184 #endif 185 186 #ifdef RRAMC_PRESENT 187 #include "hal/nrf_rramc.h" 188 #endif 189 190 #ifdef RTC_PRESENT 191 #include "hal/nrf_rtc.h" 192 #endif 193 194 #ifdef SAADC_PRESENT 195 #include "hal/nrf_saadc.h" 196 #endif 197 198 #ifdef SPI_PRESENT 199 #include "hal/nrf_spi.h" 200 #endif 201 202 #ifdef SPIM_PRESENT 203 #include "hal/nrf_spim.h" 204 #endif 205 206 #ifdef SPIS_PRESENT 207 #include "hal/nrf_spis.h" 208 #endif 209 210 #ifdef SPU_PRESENT 211 #include "hal/nrf_spu.h" 212 #endif 213 214 #ifdef TAMPC_PRESENT 215 #include "hal/nrf_tampc.h" 216 #endif 217 218 #ifdef TEMP_PRESENT 219 #include "hal/nrf_temp.h" 220 #endif 221 222 #ifdef TIMER_PRESENT 223 #include "hal/nrf_timer.h" 224 #endif 225 226 #ifdef TWI_PRESENT 227 #include "hal/nrf_twi.h" 228 #endif 229 230 #ifdef TWIM_PRESENT 231 #include "hal/nrf_twim.h" 232 #endif 233 234 #ifdef TWIS_PRESENT 235 #include "hal/nrf_twis.h" 236 #endif 237 238 #ifdef UART_PRESENT 239 #include "hal/nrf_uart.h" 240 #endif 241 242 #ifdef UARTE_PRESENT 243 #include "hal/nrf_uarte.h" 244 #endif 245 246 #ifdef USBD_PRESENT 247 #include "hal/nrf_usbd.h" 248 #endif 249 250 #ifdef USBREG_PRESENT 251 #include "hal/nrf_usbreg.h" 252 #endif 253 254 #ifdef VMC_PRESENT 255 #include "hal/nrf_vmc.h" 256 #endif 257 258 #ifdef VREQCTRL_PRESENT 259 #include "hal/nrf_vreqctrl.h" 260 #endif 261 262 #ifdef WDT_PRESENT 263 #include "hal/nrf_wdt.h" 264 #endif 265