* Added missing count compare functionality
* Now each timers has the right amount of CC
registers, events and tasks
* Interrupts are now level based
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Motivation for the change:
The nrf52833 is for the purpose of these models practically the
same as a 52832, but it includes the HEADER_MASK register in the
AES_CCM module which is needed for proper encrypted BIS support.
Changing the version of the HW we model can cause minor trouble
for users, i.e. require them to change the configuration of their SW,
but at this point is believed most users will desire sooner or
later full BLE ISO support.
Change:
* Changed version we compile as from NRF52832_XXAA to NRF52833_XXAA
* Number of interrupts increased to 47 (32 was too low even for 52832)
* Updated all documentation references to point to 52833 docs
* Updated description of missing features (no new 52833 features
implemented so far)
******************************************************************
Expect backwards/forward compatibility changes from/to this commit
******************************************************************
Signed-off-by: Alberto Escolar Piedras <alberto.escolar.piedras@nordicsemi.no>
Warning. This commit breaks backwards compatibility with
Zephyr <= 2.4.0.
With nrfx 2.3.0 it is possible to include the MDK files on
non-ARM platforms. As the MDK has a depenency to cmsis core
files, a simple mocked core_cm4.h has been provided.
By defining NRF_DECLARE_ONLY and NRF_STATIC_INLINE to nothing,
no functions are inlined. This ensures that it is possible to
mock the peripherals.
For a non-zephyr build, the application must provide the
environment varianble NRFX_BASE.
The user of the nRF MDK or nrfx must ensure that the peripheral
pointers are redefined before they are used. This is done in
nrfx_bsim_redef.h. Include this header after including nrf.h
or similar. When using nrfx, this inclusion can be placed in
nrfx_glue.h
For non-zephyr builds, a nrfx_config and nrfx_glue is provided.
Other builds should include nrfx_config_bsim.h and nrfx_glue_bsim.h
in their config and glue files.
The original implementation of the HAL APIs from the real nrfx
is included in `nrf_hal_originals.c`.
All these functions are labelled as weak,
so they can be replaced as needed with new definition in `src/nrfx/hal/`
This removes the need for duplicating code.
Signed-off-by: Rubin Gerritsen <rubin.gerritsen@nordicsemi.no>
Added a lot more information about:
* how the HW models are built
* what one would need to do if they wanted to use them
without the nr52_bsim.
* About the nRFx HAL replacement
Signed-off-by: Alberto Escolar Piedras <alpi@oticon.com>