Commit Graph

7 Commits

Author SHA1 Message Date
Alberto Escolar Piedras 57f0f65644 Makefile: Switch to gnu11 from c11 due to HAL
The Nordic HAL now uses variadic macros, but in a not strictly
conformant way to the C standard, which results in thousands
of warnings when building with -Wpedantic.

Let's switch standard version to avoid this warnings.

Signed-off-by: Alberto Escolar Piedras <>
2023-05-08 15:27:09 +02:00
Alberto Escolar Piedras 10ef6a9f8f NVMC & UICR: Add functionality
Including the necessary hal replacements.

And add in the FICR the flash page info.

Signed-off-by: Alberto Escolar Piedras <>
2023-04-27 16:07:28 +02:00
Alberto Escolar Piedras 6f8b238a53 Model a nrf52833 instead of a nrf52832
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.


* 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 <>
2023-01-24 09:18:13 +01:00
Alberto Escolar Piedras 2f06155d24 Makefile: Allow adding a sufix to the library name
As we have more customers & uses for the NRF HW models,
some of them may require some particular versions.
At the same time a user may want to have several of these
dependants all using the same bsim installation.
The only thing complicating this, was that this
Makefile produces the same library from each version.

With this new option, users can add a suffix to the library
name, either as an enviroment option, or a make option.
for ex:
export NRF_HW_MODELS_LIB_SUFFIX=.v1 ; make

With this change, a user may fetch several copies(versions)
of this component in separate component/ folders and
keep them all in parallel building each into a separate
library version.

By default nothing is changed. So this is fully backwards

Signed-off-by: Alberto Escolar Piedras <>
2021-02-03 12:36:24 +01:00
Rubin Gerritsen 71a8a9ef08 nrfx: Use actual nrfx instead of manually modified files
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

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 <>
2020-10-12 10:52:15 +02:00
Alberto Escolar Piedras 1afaa2ba72 nrfx: Added 1st version of drivers/nrf_common.h
As one of its macros will probably be used by the new
Zephyr clock driver, add a cut down version fo this header.
Also make all HAL headers include it just like in the real
nrfx HAL.

Signed-off-by: Alberto Escolar Piedras <>
2019-07-03 15:45:13 +02:00
Alberto Escolar Piedras e9b643d6d5 First commit
Signed-off-by: Alberto Escolar Piedras <>
2018-09-14 13:18:38 +02:00