Skip to content

Commit

Permalink
nrfx 2.6.0 release
Browse files Browse the repository at this point in the history
  • Loading branch information
nika-nordic committed Nov 22, 2021
1 parent 7d8fff3 commit 58ac10d
Show file tree
Hide file tree
Showing 107 changed files with 6,301 additions and 2,095 deletions.
21 changes: 21 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,27 @@
# Changelog
All notable changes to this project are documented in this file.

## [2.6.0] - 2021-11-22
### Added
- Added new functions for the GPIOTE peripheral management in the GPIOTE driver. Legacy API is now deprecated.
- Added support for the TIMER CC channels 6 and 7.
- Added the nrfx_flag32_allocator helper layer to unify resource allocation mechanism across several drivers.
- Added functions for getting shortcut bitmask associated with specified channel in the TIMER HAL.
- Added functions for channel allocation and deallocation in the nrfx_gppi helper layer.
- Added the nrf_gpio_reconfigure() function for selective reconfiguration of the specified pin.
- Introduced the NRFX_CLOCK_CONFIG_CT_ENABLED symbol for enabling the calibration timer support in the CLOCK driver. The symbol is enabled by default on supported SoCs.
- Introduced the NRFX_CTZ and NRFX_CLZ macros to allow providing custom implementation for these functionalities. By default `__RBIT()` and `__CLZ()` CMSIS macros are used.
- Introduced the NRFX_ATOMIC_CAS macro to allow providing custom implementation for atomic compare-and-swap functionality.
- Implemented workaround for the nRF9160 anomaly 7 in the NVMC driver.

### Changed
- Updated MDK to version 8.44.1.

### Fixed
- Fixed missing disabling of interrupts in the nrfx_qspi_lfm_start() and nrfx_qspi_lfm_xfer() functions.
- Fixed manual sample fetching when REPORTPER is disabled in the QDEC driver.
- Fixed a race condition in the NFCT driver when starting the transfer.

## [2.5.0] - 2021-05-05
### Added
- Added support for double-buffered transfers in the QSPI driver.
Expand Down
52 changes: 13 additions & 39 deletions doc/nrfx.doxyfile
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ PROJECT_NAME = "nrfx"

### EDIT THIS ###

PROJECT_NUMBER = "2.5"
PROJECT_NUMBER = "2.6"

# Using the PROJECT_BRIEF tag one can provide an optional one line description
# for a project that appears at the top of each page and should give viewer a
Expand Down Expand Up @@ -243,7 +243,7 @@ ALIASES = "tagGreenTick=\htmlonly<CENTER><font color=\"green\">
# A mapping has the form "name=value". For example adding "class=itcl::class"
# will allow you to use the command class in the itcl::class meaning.

TCL_SUBST =
# TCL_SUBST =

# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C sources
# only. Doxygen will then generate output that is more tailored for C. For
Expand Down Expand Up @@ -1082,7 +1082,7 @@ ALPHABETICAL_INDEX = NO
# Minimum value: 1, maximum value: 20, default value: 5.
# This tag requires that the tag ALPHABETICAL_INDEX is set to YES.

COLS_IN_ALPHA_INDEX = 5
# COLS_IN_ALPHA_INDEX = 5

# In case all classes in a project start with a common prefix, all classes will
# be put under the same header in the alphabetical index. The IGNORE_PREFIX tag
Expand Down Expand Up @@ -1789,16 +1789,6 @@ LATEX_BATCHMODE = NO

LATEX_HIDE_INDICES = NO

# If the LATEX_SOURCE_CODE tag is set to YES then doxygen will include source
# code with syntax highlighting in the LaTeX output.
#
# Note that which sources are shown also depends on other settings such as
# SOURCE_BROWSER.
# The default value is: NO.
# This tag requires that the tag GENERATE_LATEX is set to YES.

LATEX_SOURCE_CODE = NO

# The LATEX_BIB_STYLE tag can be used to specify the style to use for the
# bibliography, e.g. plainnat, or ieeetr. See
# https://en.wikipedia.org/wiki/BibTeX and \cite for more info.
Expand Down Expand Up @@ -2088,30 +2078,14 @@ INCLUDE_FILE_PATTERNS =

PREDEFINED = SUPPRESS_INLINE_IMPLEMENTATION \
__NRFX_DOXYGEN__ \
CONFIG_PURGE_ENABLED \
== \
1 \
CONFIG_DISASSOCIATE_ENABLED \
== \
1 \
CONFIG_GTS_ENABLED \
== \
1 \
CONFIG_ORPHAN_ENABLED \
== \
1 \
CONFIG_RXE_ENABLED \
== \
1 \
CONFIG_START_ENABLED \
== \
1 \
CONFIG_SYNC_ENABLED \
== \
1 \
CONFIG_PANID_CONFLICT_ENABLED \
== \
1
CONFIG_PURGE_ENABLED=1 \
CONFIG_DISASSOCIATE_ENABLED=1 \
CONFIG_GTS_ENABLED=1 \
CONFIG_ORPHAN_ENABLED=1 \
CONFIG_RXE_ENABLED=1 \
CONFIG_START_ENABLED=1 \
CONFIG_SYNC_ENABLED=1 \
CONFIG_PANID_CONFLICT_ENABLED=1

# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then this
# tag can be used to specify a list of macro names that should be expanded. The
Expand Down Expand Up @@ -2184,7 +2158,7 @@ EXTERNAL_GROUPS = NO
# interpreter (i.e. the result of 'which perl').
# The default file (with absolute path) is: /usr/bin/perl.

PERL_PATH = /usr/bin/perl
# PERL_PATH = /usr/bin/perl

#---------------------------------------------------------------------------
# Configuration options related to the dot tool
Expand All @@ -2206,7 +2180,7 @@ CLASS_DIAGRAMS = YES
# the mscgen tool resides. If left empty the tool is assumed to be found in the
# default search path.

MSCGEN_PATH =
# MSCGEN_PATH =

# You can include diagrams made with dia in doxygen documentation. Doxygen will
# then run dia to produce the diagram and insert it in the documentation. The
Expand Down
6 changes: 6 additions & 0 deletions doc/sphinx/nrfx_api/flag32_allocator.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
Generic flag allocator
======================

.. doxygengroup:: nrfx_flag32_allocator
:project: nrfx
:members:
9 changes: 9 additions & 0 deletions drivers/include/nrf_bitmask.h
Original file line number Diff line number Diff line change
Expand Up @@ -47,6 +47,15 @@ extern "C" {
* @brief Bitmask managing module.
*/

/**
* @brief Get number of bytes needed to store the given bitmask.
*
* @param[in] bits_count Number of bits in the bitmask.
*
* @return Number of bytes to store requested bit mask.
*/
#define BITMASK_BYTES_CALCULATE(bits_count) NRFX_CEIL_DIV(bits_count, 8)

/** @brief Macro for getting index of byte in byte stream where @c abs_bit is put. */
#define BITMASK_BYTE_GET(abs_bit) ((abs_bit)/8)

Expand Down
26 changes: 9 additions & 17 deletions drivers/include/nrfx_dppi.h
Original file line number Diff line number Diff line change
Expand Up @@ -55,10 +55,7 @@ void nrfx_dppi_free(void);
* @brief Function for allocating a DPPI channel.
* @details This function allocates the first unused DPPI channel.
*
* @note To ensure the thread safety of the operation, this function uses the
* @ref NRFX_CRITICAL_SECTION_ENTER and @ref NRFX_CRITICAL_SECTION_EXIT
* macros. No further synchronization mechanism is needed, provided the
* macros are properly implemented (see @ref nrfx_glue).
* @note Function is thread safe as it uses @ref nrfx_flag32_alloc.
*
* @param[out] p_channel Pointer to the DPPI channel number that has been allocated.
*
Expand All @@ -69,12 +66,10 @@ nrfx_err_t nrfx_dppi_channel_alloc(uint8_t * p_channel);

/**
* @brief Function for freeing a DPPI channel.
* @details This function also disables the chosen channel.
* @details This function also disables the chosen channel. Configuration in
* PUBLISH/SUBSCRIBE registers used for the channel is not cleared.
*
* @note To ensure the thread safety of the operation, this function uses the
* @ref NRFX_CRITICAL_SECTION_ENTER and @ref NRFX_CRITICAL_SECTION_EXIT
* macros. No further synchronization mechanism is needed, provided the
* macros are properly implemented (see @ref nrfx_glue).
* @note Function is thread safe as it uses @ref nrfx_flag32_free.
*
* @param[in] channel DPPI channel to be freed.
*
Expand All @@ -96,6 +91,9 @@ nrfx_err_t nrfx_dppi_channel_enable(uint8_t channel);
/**
* @brief Function for disabling a DPPI channel.
*
* @note Disabling channel does not modify PUBLISH/SUBSCRIBE registers configured to use
* that channel.
*
* @param[in] channel DPPI channel to be disabled.
*
* @retval NRFX_SUCCESS The channel was successfully disabled.
Expand All @@ -107,10 +105,7 @@ nrfx_err_t nrfx_dppi_channel_disable(uint8_t channel);
* @brief Function for allocating a DPPI channel group.
* @details This function allocates the first unused DPPI group.
*
* @note To ensure the thread safety of the operation, this function uses the
* @ref NRFX_CRITICAL_SECTION_ENTER and @ref NRFX_CRITICAL_SECTION_EXIT
* macros. No further synchronization mechanism is needed, provided the
* macros are properly implemented (see @ref nrfx_glue).
* @note Function is thread safe as it uses @ref nrfx_flag32_alloc.
*
* @param[out] p_group Pointer to the DPPI channel group that has been allocated.
*
Expand All @@ -123,10 +118,7 @@ nrfx_err_t nrfx_dppi_group_alloc(nrf_dppi_channel_group_t * p_group);
* @brief Function for freeing a DPPI channel group.
* @details This function also disables the chosen group.
*
* @note To ensure the thread safety of the operation, this function uses the
* @ref NRFX_CRITICAL_SECTION_ENTER and @ref NRFX_CRITICAL_SECTION_EXIT
* macros. No further synchronization mechanism is needed, provided the
* macros are properly implemented (see @ref nrfx_glue).
* @note Function is thread safe as it uses @ref nrfx_flag32_free.
*
* @param[in] group DPPI channel group to be freed.
*
Expand Down
Loading

0 comments on commit 58ac10d

Please sign in to comment.