diff --git a/CHANGELOG.md b/CHANGELOG.md index c81c9c041..30c0a4ff9 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,6 +1,22 @@ # Changelog All notable changes to this project are documented in this file. +## [2.8.0] - 2022-04-05 +### Added +- Added function for getting the currently configured channels in the SAADC driver. +- Added callback for the RXFRAMESTART event in the NFCT driver. +- Added function for transmitting the NFC frame with specified number of bits in the NFCT driver. +- Added functions for getting and setting SEL_RES auto response configuration in the NFCT HAL. + +### Changed +- Refactored calibration procedure in the SAADC driver, so it retains previously configured mode. +- Improved management of low frequency clock source during initialization in the CLOCK driver. Compatible source that already runs or is starting during initialization is now used without reconfiguration. +- Improved software-managed triggering of the START task on an END event in the SAADC driver. + +### Fixed +- Fixed event processing order in the SAADC driver. Previously, incorrect buffer might have been filled when double-buffered sampling was used with END event and START task being connected through (D)PPI. +- Fixed the limits feature that could be spuriously triggered during calibration procedure in the SAADC driver. + ## [2.7.0] - 2021-12-16 ### Added - Added new fields in the driver configuration structures to allow skipping GPIO and/or PSEL register configuration. Affected drivers: I2S, PDM, PWM, QDEC, QSPI, SPI, SPIM, SPIS, TWI, TWIM, TWIS, UART, UARTE. diff --git a/LICENSE b/LICENSE index fef3bb0be..77fe14ea5 100644 --- a/LICENSE +++ b/LICENSE @@ -1,4 +1,4 @@ -Copyright (c) 2017 - 2021, Nordic Semiconductor ASA +Copyright (c) 2017 - 2022, Nordic Semiconductor ASA All rights reserved. SPDX-License-Identifier: BSD-3-Clause diff --git a/doc/nrfx.doxyfile b/doc/nrfx.doxyfile index 95b9c82a4..0a6dca910 100644 --- a/doc/nrfx.doxyfile +++ b/doc/nrfx.doxyfile @@ -40,7 +40,7 @@ PROJECT_NAME = "nrfx" ### EDIT THIS ### -PROJECT_NUMBER = "2.7" +PROJECT_NUMBER = "2.8" # 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 diff --git a/drivers/include/nrf_bitmask.h b/drivers/include/nrf_bitmask.h index 9a6432abb..0c840927f 100644 --- a/drivers/include/nrf_bitmask.h +++ b/drivers/include/nrf_bitmask.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_adc.h b/drivers/include/nrfx_adc.h index 4c1ae6676..9dc4dbc2d 100644 --- a/drivers/include/nrfx_adc.h +++ b/drivers/include/nrfx_adc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_clock.h b/drivers/include/nrfx_clock.h index 294fa5a30..51a928dfb 100644 --- a/drivers/include/nrfx_clock.h +++ b/drivers/include/nrfx_clock.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_comp.h b/drivers/include/nrfx_comp.h index 4d51cff43..45b49af82 100644 --- a/drivers/include/nrfx_comp.h +++ b/drivers/include/nrfx_comp.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_dppi.h b/drivers/include/nrfx_dppi.h index 5fd86adbb..a99a28e2e 100644 --- a/drivers/include/nrfx_dppi.h +++ b/drivers/include/nrfx_dppi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_egu.h b/drivers/include/nrfx_egu.h index 9a57154c3..e62725bd1 100644 --- a/drivers/include/nrfx_egu.h +++ b/drivers/include/nrfx_egu.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_gpiote.h b/drivers/include/nrfx_gpiote.h index f145da195..85a7158a5 100644 --- a/drivers/include/nrfx_gpiote.h +++ b/drivers/include/nrfx_gpiote.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_i2s.h b/drivers/include/nrfx_i2s.h index 93a556520..065fe170c 100644 --- a/drivers/include/nrfx_i2s.h +++ b/drivers/include/nrfx_i2s.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_ipc.h b/drivers/include/nrfx_ipc.h index 10c2031a3..8f23b38bb 100644 --- a/drivers/include/nrfx_ipc.h +++ b/drivers/include/nrfx_ipc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_lpcomp.h b/drivers/include/nrfx_lpcomp.h index c14a16bff..a994010e0 100644 --- a/drivers/include/nrfx_lpcomp.h +++ b/drivers/include/nrfx_lpcomp.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_nfct.h b/drivers/include/nrfx_nfct.h index 5f46c1e58..a4e4aa18c 100644 --- a/drivers/include/nrfx_nfct.h +++ b/drivers/include/nrfx_nfct.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_nvmc.h b/drivers/include/nrfx_nvmc.h index ebbf5b64b..28cef860d 100644 --- a/drivers/include/nrfx_nvmc.h +++ b/drivers/include/nrfx_nvmc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_pdm.h b/drivers/include/nrfx_pdm.h index 46420894f..0aa926e4e 100644 --- a/drivers/include/nrfx_pdm.h +++ b/drivers/include/nrfx_pdm.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_power.h b/drivers/include/nrfx_power.h index 42ba79066..dabbb6274 100644 --- a/drivers/include/nrfx_power.h +++ b/drivers/include/nrfx_power.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_power_clock.h b/drivers/include/nrfx_power_clock.h index ad6fbfed1..87ee8ca82 100644 --- a/drivers/include/nrfx_power_clock.h +++ b/drivers/include/nrfx_power_clock.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_power_compat.h b/drivers/include/nrfx_power_compat.h index 49d73ff8a..adf332afa 100644 --- a/drivers/include/nrfx_power_compat.h +++ b/drivers/include/nrfx_power_compat.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_ppi.h b/drivers/include/nrfx_ppi.h index 33520db6c..c8360fef9 100644 --- a/drivers/include/nrfx_ppi.h +++ b/drivers/include/nrfx_ppi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_pwm.h b/drivers/include/nrfx_pwm.h index 2e2ff62dd..4cdf50276 100644 --- a/drivers/include/nrfx_pwm.h +++ b/drivers/include/nrfx_pwm.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_qdec.h b/drivers/include/nrfx_qdec.h index d35fd7529..d78f4c9d7 100644 --- a/drivers/include/nrfx_qdec.h +++ b/drivers/include/nrfx_qdec.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_qspi.h b/drivers/include/nrfx_qspi.h index f7e6134ac..e5fa542a9 100644 --- a/drivers/include/nrfx_qspi.h +++ b/drivers/include/nrfx_qspi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_rng.h b/drivers/include/nrfx_rng.h index fc52514b7..b9f7402dd 100644 --- a/drivers/include/nrfx_rng.h +++ b/drivers/include/nrfx_rng.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_rtc.h b/drivers/include/nrfx_rtc.h index de6339b86..8469e81c2 100644 --- a/drivers/include/nrfx_rtc.h +++ b/drivers/include/nrfx_rtc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_saadc.h b/drivers/include/nrfx_saadc.h index b7f34574f..7efdc90c3 100644 --- a/drivers/include/nrfx_saadc.h +++ b/drivers/include/nrfx_saadc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause @@ -259,9 +259,19 @@ nrfx_err_t nrfx_saadc_channels_config(nrfx_saadc_channel_t const * p_channels, */ nrfx_err_t nrfx_saadc_channel_config(nrfx_saadc_channel_t const * p_channel); +/** + * @brief Function for getting the currently configured SAADC channels. + * + * @return Bitmask of configured channels. + */ +uint32_t nrfx_saadc_channels_configured_get(void); + /** * @brief Function for deconfiguring the specified SAADC channels. * + * @warning Pins associated with the deconfigured channels will be released after + * next @ref nrfx_saadc_simple_mode_set() or @ref nrfx_saadc_advanced_mode_set() call. + * * @param[in] channel_mask Bitmask of channels to be deconfigured. * * @retval NRFX_SUCCESS Deconfiguration was successful. @@ -351,14 +361,17 @@ nrfx_err_t nrfx_saadc_buffer_set(nrf_saadc_value_t * p_buffer, uint16_t size); * Call the function again to continue the conversion. * @retval NRFX_ERROR_NO_MEM There is no buffer provided. * Supply the buffer using @ref nrfx_saadc_buffer_set() and try again. - * @retval NRFX_ERROR_INVALID_STATE There is an ongoing conversion being performed in the non-blocking manner - * or the driver is in the idle mode. + * @retval NRFX_ERROR_INVALID_STATE There is an ongoing conversion or calibration being performed + * in the non-blocking manner or the driver is in the idle mode. */ nrfx_err_t nrfx_saadc_mode_trigger(void); /** * @brief Function for aborting the ongoing and buffered conversions. * + * @warning Aborting blocking conversion or calibration from different context is not supported. + * Perform the operation in non-blocking manner instead. + * * @note @ref NRFX_SAADC_EVT_DONE event will be generated if there is a conversion in progress. * Event will contain number of words in the sample buffer. */ @@ -391,17 +404,14 @@ nrfx_err_t nrfx_saadc_limits_set(uint8_t channel, int16_t limit_low, int16_t lim /** * @brief Function for starting the SAADC offset calibration. * - * @note This function cancels the currently selected driver operation mode, if any. - * The desired mode (simple or advanced) must be set after the calibration process completes. - * - * @param[in] event_handler Event handler provided by the user. In case of providing NULL, - * the calibration will be performed in the blocking manner. + * @param[in] calib_event_handler Calibration event handler provided by the user. In case of providing NULL, + * the calibration will be performed in the blocking manner. * * @retval NRFX_SUCCESS Calibration finished successfully in the blocking manner * or started successfully in the non-blocking manner. * @retval NRFX_ERROR_BUSY There is a conversion or calibration ongoing. */ -nrfx_err_t nrfx_saadc_offset_calibrate(nrfx_saadc_event_handler_t event_handler); +nrfx_err_t nrfx_saadc_offset_calibrate(nrfx_saadc_event_handler_t calib_event_handler); /** @} */ diff --git a/drivers/include/nrfx_spi.h b/drivers/include/nrfx_spi.h index d582fa736..cd40c9741 100644 --- a/drivers/include/nrfx_spi.h +++ b/drivers/include/nrfx_spi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_spim.h b/drivers/include/nrfx_spim.h index a79a83b57..b60368eba 100644 --- a/drivers/include/nrfx_spim.h +++ b/drivers/include/nrfx_spim.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_spis.h b/drivers/include/nrfx_spis.h index ddc9487c5..571791887 100644 --- a/drivers/include/nrfx_spis.h +++ b/drivers/include/nrfx_spis.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_systick.h b/drivers/include/nrfx_systick.h index 1568ef30f..49763f9cf 100644 --- a/drivers/include/nrfx_systick.h +++ b/drivers/include/nrfx_systick.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_temp.h b/drivers/include/nrfx_temp.h index 3a9ac0bd6..4e07e269a 100644 --- a/drivers/include/nrfx_temp.h +++ b/drivers/include/nrfx_temp.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_timer.h b/drivers/include/nrfx_timer.h index e79da2b01..3bf5b326a 100644 --- a/drivers/include/nrfx_timer.h +++ b/drivers/include/nrfx_timer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_twi.h b/drivers/include/nrfx_twi.h index a93bc55d9..6ad06c07b 100644 --- a/drivers/include/nrfx_twi.h +++ b/drivers/include/nrfx_twi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_twi_twim.h b/drivers/include/nrfx_twi_twim.h index f10a33007..e666ced41 100644 --- a/drivers/include/nrfx_twi_twim.h +++ b/drivers/include/nrfx_twi_twim.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_twim.h b/drivers/include/nrfx_twim.h index 14e45410f..3e378fc8f 100644 --- a/drivers/include/nrfx_twim.h +++ b/drivers/include/nrfx_twim.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_twis.h b/drivers/include/nrfx_twis.h index 8034161aa..30d3a7491 100644 --- a/drivers/include/nrfx_twis.h +++ b/drivers/include/nrfx_twis.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_uart.h b/drivers/include/nrfx_uart.h index 8edcbe0d0..a88eceee8 100644 --- a/drivers/include/nrfx_uart.h +++ b/drivers/include/nrfx_uart.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_uarte.h b/drivers/include/nrfx_uarte.h index 7b2760ab7..bc64a907d 100644 --- a/drivers/include/nrfx_uarte.h +++ b/drivers/include/nrfx_uarte.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_usbd.h b/drivers/include/nrfx_usbd.h index 009179d08..9097bb956 100644 --- a/drivers/include/nrfx_usbd.h +++ b/drivers/include/nrfx_usbd.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_usbreg.h b/drivers/include/nrfx_usbreg.h index 4405dbdcf..2257829ae 100644 --- a/drivers/include/nrfx_usbreg.h +++ b/drivers/include/nrfx_usbreg.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/include/nrfx_wdt.h b/drivers/include/nrfx_wdt.h index 9e9fc1580..75911d740 100644 --- a/drivers/include/nrfx_wdt.h +++ b/drivers/include/nrfx_wdt.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/nrfx_common.h b/drivers/nrfx_common.h index a51a7c92a..43c9e638b 100644 --- a/drivers/nrfx_common.h +++ b/drivers/nrfx_common.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/nrfx_errors.h b/drivers/nrfx_errors.h index 26f3f4a20..a9725e7f1 100644 --- a/drivers/nrfx_errors.h +++ b/drivers/nrfx_errors.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_adc.c b/drivers/src/nrfx_adc.c index b63724ced..83af91a26 100644 --- a/drivers/src/nrfx_adc.c +++ b/drivers/src/nrfx_adc.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_clock.c b/drivers/src/nrfx_clock.c index 777c7962d..8deb8cf3f 100644 --- a/drivers/src/nrfx_clock.c +++ b/drivers/src/nrfx_clock.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause @@ -184,6 +184,94 @@ static void nrfx_clock_anomaly_132(void) } #endif // NRFX_CHECK(USE_WORKAROUND_FOR_ANOMALY_132) +static void clock_stop(nrf_clock_domain_t domain) +{ + switch (domain) + { + case NRF_CLOCK_DOMAIN_LFCLK: + nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_LF_STARTED_MASK); + nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_LFCLKSTARTED); + nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_LFCLKSTOP); + break; + case NRF_CLOCK_DOMAIN_HFCLK: + nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_HF_STARTED_MASK); + nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_HFCLKSTARTED); + nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_HFCLKSTOP); + break; +#if NRF_CLOCK_HAS_HFCLK192M + case NRF_CLOCK_DOMAIN_HFCLK192M: + nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_HF192M_STARTED_MASK); + nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_HFCLK192MSTARTED); + nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_HFCLK192MSTOP); + break; +#endif +#if NRF_CLOCK_HAS_HFCLKAUDIO + case NRF_CLOCK_DOMAIN_HFCLKAUDIO: + nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_HFAUDIO_STARTED_MASK); + nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_HFCLKAUDIOSTARTED); + nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_HFCLKAUDIOSTOP); + break; +#endif + default: + NRFX_ASSERT(0); + return; + } + + bool stopped; + nrf_clock_hfclk_t clk_src = NRF_CLOCK_HFCLK_HIGH_ACCURACY; + nrf_clock_hfclk_t *p_clk_src = (domain == NRF_CLOCK_DOMAIN_HFCLK) ? &clk_src : NULL; + NRFX_WAIT_FOR((!nrfx_clock_is_running(domain, p_clk_src) || + (p_clk_src && clk_src != NRF_CLOCK_HFCLK_HIGH_ACCURACY)), 10000, 1, stopped); + if (!stopped) + { + NRFX_LOG_ERROR("Failed to stop clock domain: %d.", domain); + } + +#if NRFX_CHECK(USE_WORKAROUND_FOR_ANOMALY_201) + if (domain == NRF_CLOCK_DOMAIN_HFCLK) + { + m_clock_cb.hfclk_started = false; + } +#endif +} + +static nrf_clock_lfclk_t clock_initial_lfclksrc_get(void) +{ +#if NRFX_CHECK(NRFX_CLOCK_CONFIG_LFXO_TWO_STAGE_ENABLED) + return NRF_CLOCK_LFCLK_RC; +#else + return (nrf_clock_lfclk_t)NRFX_CLOCK_CONFIG_LF_SRC; +#endif +} + +/** + * @brief Function for tweaking the specified low-frequency clock source given current driver state. + * + * @warning This function may stop currently running low-frequency clock source. + * + * @param[in,out] p_lfclksrc Pointer to the variable containing low-frequency clock source. + * It is set to adequate value in case of being inappropriate + * for current driver configuration. + * + * @return True if the specified clock source was correct, false otherwise. + */ +static bool clock_lfclksrc_tweak(nrf_clock_lfclk_t * p_lfclksrc) +{ + bool is_correct_clk = (*p_lfclksrc == NRFX_CLOCK_CONFIG_LF_SRC); +#if NRFX_CHECK(NRFX_CLOCK_CONFIG_LFXO_TWO_STAGE_ENABLED) + // In case of two-stage LFXO start procedure RC source is valid as well. + is_correct_clk = is_correct_clk || (*p_lfclksrc == NRF_CLOCK_LFCLK_RC); +#endif + if (!is_correct_clk) + { + // Inappropriate LF clock source is chosen. + // Stop currently active LF clock source and choose the correct one to start. + clock_stop(NRF_CLOCK_DOMAIN_LFCLK); + *p_lfclksrc = clock_initial_lfclksrc_get(); + } + return is_correct_clk; +} + nrfx_err_t nrfx_clock_init(nrfx_clock_event_handler_t event_handler) { NRFX_ASSERT(event_handler); @@ -213,9 +301,7 @@ void nrfx_clock_enable(void) { NRFX_ASSERT(m_clock_cb.module_initialized); nrfx_power_clock_irq_init(); -#if !NRFX_CHECK(NRFX_CLOCK_CONFIG_LFXO_TWO_STAGE_ENABLED) - nrf_clock_lf_src_set(NRF_CLOCK, (nrf_clock_lfclk_t)NRFX_CLOCK_CONFIG_LF_SRC); -#endif + nrf_clock_lf_src_set(NRF_CLOCK, clock_initial_lfclksrc_get()); #if NRF_CLOCK_HAS_HFCLKSRC nrf_clock_hf_src_set(NRF_CLOCK, NRF_CLOCK_HFCLK_HIGH_ACCURACY); #endif @@ -257,13 +343,13 @@ void nrfx_clock_disable(void) void nrfx_clock_uninit(void) { NRFX_ASSERT(m_clock_cb.module_initialized); - nrfx_clock_stop(NRF_CLOCK_DOMAIN_LFCLK); - nrfx_clock_stop(NRF_CLOCK_DOMAIN_HFCLK); + clock_stop(NRF_CLOCK_DOMAIN_LFCLK); + clock_stop(NRF_CLOCK_DOMAIN_HFCLK); #if NRF_CLOCK_HAS_HFCLK192M - nrfx_clock_stop(NRF_CLOCK_DOMAIN_HFCLK192M); + clock_stop(NRF_CLOCK_DOMAIN_HFCLK192M); #endif #if NRF_CLOCK_HAS_HFCLKAUDIO - nrfx_clock_stop(NRF_CLOCK_DOMAIN_HFCLKAUDIO); + clock_stop(NRF_CLOCK_DOMAIN_HFCLKAUDIO); #endif m_clock_cb.module_initialized = false; NRFX_LOG_INFO("Uninitialized."); @@ -275,25 +361,37 @@ void nrfx_clock_start(nrf_clock_domain_t domain) switch (domain) { case NRF_CLOCK_DOMAIN_LFCLK: -#if NRFX_CHECK(NRFX_CLOCK_CONFIG_LFXO_TWO_STAGE_ENABLED) { nrf_clock_lfclk_t lfclksrc; - if (nrf_clock_is_running(NRF_CLOCK, NRF_CLOCK_DOMAIN_LFCLK, &lfclksrc) && - lfclksrc == NRFX_CLOCK_CONFIG_LF_SRC) + if (nrf_clock_is_running(NRF_CLOCK, NRF_CLOCK_DOMAIN_LFCLK, &lfclksrc)) { - // If the two-stage LFXO procedure has finished already - // use the configured LF clock source. - nrf_clock_lf_src_set(NRF_CLOCK, (nrf_clock_lfclk_t)NRFX_CLOCK_CONFIG_LF_SRC); + // LF clock is already running. Inspect its source. + // If LF clock source is inappropriate then it will be stopped and modified. + // Ignore return value as LF clock will be started again regardless of the result. + (void)clock_lfclksrc_tweak(&lfclksrc); + } + else if (nrf_clock_start_task_check(NRF_CLOCK, NRF_CLOCK_DOMAIN_LFCLK)) + { + // LF clock is not active yet but was started already. Inspect its source. + lfclksrc = nrf_clock_lf_srccopy_get(NRF_CLOCK); + if (clock_lfclksrc_tweak(&lfclksrc)) + { + // LF clock was started already and the configured source + // corresponds to the user configuration. + // No action is needed as the chosen LF clock source will become active soon. + nrf_clock_int_enable(NRF_CLOCK, NRF_CLOCK_INT_LF_STARTED_MASK); + break; + } + // Otherwise LF clock was started already but with inappropriate source. + // LF clock was stopped and modified. Now it will be restarted. } else { - // If the two-stage LFXO procedure hasn't started yet - // or the RC stage is in progress, - // use the RC oscillator as LF clock source. - nrf_clock_lf_src_set(NRF_CLOCK, NRF_CLOCK_LFCLK_RC); + // LF clock not active and not started. + lfclksrc = clock_initial_lfclksrc_get(); } + nrf_clock_lf_src_set(NRF_CLOCK, lfclksrc); } -#endif // NRFX_CHECK(NRFX_CLOCK_CONFIG_LFXO_TWO_STAGE_ENABLED) nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_LFCLKSTARTED); nrf_clock_int_enable(NRF_CLOCK, NRF_CLOCK_INT_LF_STARTED_MASK); #if NRFX_CHECK(USE_WORKAROUND_FOR_ANOMALY_132) @@ -329,60 +427,7 @@ void nrfx_clock_start(nrf_clock_domain_t domain) void nrfx_clock_stop(nrf_clock_domain_t domain) { NRFX_ASSERT(m_clock_cb.module_initialized); - switch (domain) - { - case NRF_CLOCK_DOMAIN_LFCLK: - nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_LF_STARTED_MASK); - nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_LFCLKSTARTED); - nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_LFCLKSTOP); - break; - case NRF_CLOCK_DOMAIN_HFCLK: - nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_HF_STARTED_MASK); - nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_HFCLKSTARTED); - nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_HFCLKSTOP); - break; -#if NRF_CLOCK_HAS_HFCLK192M - case NRF_CLOCK_DOMAIN_HFCLK192M: - nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_HF192M_STARTED_MASK); - nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_HFCLK192MSTARTED); - nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_HFCLK192MSTOP); - break; -#endif -#if NRF_CLOCK_HAS_HFCLKAUDIO - case NRF_CLOCK_DOMAIN_HFCLKAUDIO: - nrf_clock_int_disable(NRF_CLOCK, NRF_CLOCK_INT_HFAUDIO_STARTED_MASK); - nrf_clock_event_clear(NRF_CLOCK, NRF_CLOCK_EVENT_HFCLKAUDIOSTARTED); - nrf_clock_task_trigger(NRF_CLOCK, NRF_CLOCK_TASK_HFCLKAUDIOSTOP); - break; -#endif - default: - NRFX_ASSERT(0); - return; - } - - bool stopped; - if (domain == NRF_CLOCK_DOMAIN_HFCLK) - { - nrf_clock_hfclk_t clk_src = NRF_CLOCK_HFCLK_HIGH_ACCURACY; - NRFX_WAIT_FOR((!nrfx_clock_is_running(domain, &clk_src) || - (clk_src != NRF_CLOCK_HFCLK_HIGH_ACCURACY)), 10000, 1, stopped); - } - else - { - NRFX_WAIT_FOR(!nrfx_clock_is_running(domain, NULL), 10000, 1, stopped); - } - - if (!stopped) - { - NRFX_LOG_ERROR("Failed to stop clock domain: %d.", domain); - } - -#if NRFX_CHECK(USE_WORKAROUND_FOR_ANOMALY_201) - if (domain == NRF_CLOCK_DOMAIN_HFCLK) - { - m_clock_cb.hfclk_started = false; - } -#endif + clock_stop(domain); } nrfx_err_t nrfx_clock_calibration_start(void) diff --git a/drivers/src/nrfx_comp.c b/drivers/src/nrfx_comp.c index fb471007a..aaa7f75eb 100644 --- a/drivers/src/nrfx_comp.c +++ b/drivers/src/nrfx_comp.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_dppi.c b/drivers/src/nrfx_dppi.c index e12f7970a..375158036 100644 --- a/drivers/src/nrfx_dppi.c +++ b/drivers/src/nrfx_dppi.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_egu.c b/drivers/src/nrfx_egu.c index 147e87201..7247d84aa 100644 --- a/drivers/src/nrfx_egu.c +++ b/drivers/src/nrfx_egu.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_gpiote.c b/drivers/src/nrfx_gpiote.c index b44cbb3da..79015c5a3 100644 --- a/drivers/src/nrfx_gpiote.c +++ b/drivers/src/nrfx_gpiote.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_i2s.c b/drivers/src/nrfx_i2s.c index 2d633aeb4..2c7b2af92 100644 --- a/drivers/src/nrfx_i2s.c +++ b/drivers/src/nrfx_i2s.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_ipc.c b/drivers/src/nrfx_ipc.c index 938038abc..8646a0942 100644 --- a/drivers/src/nrfx_ipc.c +++ b/drivers/src/nrfx_ipc.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_lpcomp.c b/drivers/src/nrfx_lpcomp.c index cb526a9fa..546e54130 100644 --- a/drivers/src/nrfx_lpcomp.c +++ b/drivers/src/nrfx_lpcomp.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_nfct.c b/drivers/src/nrfx_nfct.c index 197dca477..c65538160 100644 --- a/drivers/src/nrfx_nfct.c +++ b/drivers/src/nrfx_nfct.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_nvmc.c b/drivers/src/nrfx_nvmc.c index 53a4c2ea4..04515780e 100644 --- a/drivers/src/nrfx_nvmc.c +++ b/drivers/src/nrfx_nvmc.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_pdm.c b/drivers/src/nrfx_pdm.c index b2d349146..7614c983b 100644 --- a/drivers/src/nrfx_pdm.c +++ b/drivers/src/nrfx_pdm.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_power.c b/drivers/src/nrfx_power.c index 92a4b65a4..06ca885c6 100644 --- a/drivers/src/nrfx_power.c +++ b/drivers/src/nrfx_power.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_ppi.c b/drivers/src/nrfx_ppi.c index fc87cca26..3efdf1617 100644 --- a/drivers/src/nrfx_ppi.c +++ b/drivers/src/nrfx_ppi.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_pwm.c b/drivers/src/nrfx_pwm.c index b8bf5f892..b00fe22a6 100644 --- a/drivers/src/nrfx_pwm.c +++ b/drivers/src/nrfx_pwm.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_qdec.c b/drivers/src/nrfx_qdec.c index 4be8073e7..f5576b2b9 100644 --- a/drivers/src/nrfx_qdec.c +++ b/drivers/src/nrfx_qdec.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_qspi.c b/drivers/src/nrfx_qspi.c index 7b6688a70..92b467c46 100644 --- a/drivers/src/nrfx_qspi.c +++ b/drivers/src/nrfx_qspi.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_rng.c b/drivers/src/nrfx_rng.c index 182280bc0..02da95b71 100644 --- a/drivers/src/nrfx_rng.c +++ b/drivers/src/nrfx_rng.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_rtc.c b/drivers/src/nrfx_rtc.c index 602262203..acafa54d7 100644 --- a/drivers/src/nrfx_rtc.c +++ b/drivers/src/nrfx_rtc.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_saadc.c b/drivers/src/nrfx_saadc.c index 3947cc8ae..96d22f214 100644 --- a/drivers/src/nrfx_saadc.c +++ b/drivers/src/nrfx_saadc.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause @@ -47,9 +47,6 @@ #if defined(NRF53_SERIES) || defined(NRF91_SERIES) // Make sure that SAADC is stopped before channel configuration. #define STOP_SAADC_ON_CHANNEL_CONFIG 1 - - // Make sure that SAADC calibration samples do not affect next conversions. - #define INTERCEPT_SAADC_CALIBRATION_SAMPLES 1 #endif /** @brief Bitmask of all available SAADC channels. */ @@ -72,17 +69,17 @@ typedef enum typedef struct { nrfx_saadc_event_handler_t event_handler; ///< Event handler function pointer. + nrfx_saadc_event_handler_t calib_event_handler; ///< Event handler function pointer for calibration event. nrf_saadc_value_t * p_buffer_primary; ///< Pointer to the primary result buffer. nrf_saadc_value_t * p_buffer_secondary; ///< Pointer to the secondary result buffer. -#if NRFX_CHECK(INTERCEPT_SAADC_CALIBRATION_SAMPLES) - nrf_saadc_value_t calib_samples[6]; ///< Scratch buffer for calibration samples. -#endif + nrf_saadc_value_t calib_samples[2]; ///< Scratch buffer for post-calibration samples. uint16_t size_primary; ///< Size of the primary result buffer. uint16_t size_secondary; ///< Size of the secondary result buffer. uint16_t samples_converted; ///< Number of samples present in result buffer when in the blocking mode. nrf_saadc_input_t channels_pselp[SAADC_CH_NUM]; ///< Array holding each channel positive input. nrf_saadc_input_t channels_pseln[SAADC_CH_NUM]; ///< Array holding each channel negative input. nrf_saadc_state_t saadc_state; ///< State of the SAADC driver. + nrf_saadc_state_t saadc_state_prev; ///< Previous state of the SAADC driver. uint8_t channels_configured; ///< Bitmask of the configured channels. uint8_t channels_activated; ///< Bitmask of the activated channels. uint8_t channels_activated_count; ///< Number of the activated channels. @@ -173,6 +170,17 @@ static void saadc_channels_deconfig(uint32_t channel_mask) } } +static void saadc_channels_disable(uint32_t channel_mask) +{ + while (channel_mask) + { + uint8_t channel = NRF_CTZ(channel_mask); + channel_mask &= ~(1 << channel); + nrf_saadc_channel_input_set(NRF_SAADC, channel, + NRF_SAADC_INPUT_DISABLED, NRF_SAADC_INPUT_DISABLED); + } +} + static bool saadc_busy_check(void) { if ((m_cb.saadc_state == NRF_SAADC_STATE_IDLE) || @@ -266,10 +274,12 @@ nrfx_err_t nrfx_saadc_init(uint8_t interrupt_priority) nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_STARTED); nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_STOPPED); nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_END); + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE); nrf_saadc_int_set(NRF_SAADC, 0); saadc_channels_deconfig(SAADC_ALL_CHANNELS_MASK); NRFX_IRQ_ENABLE(SAADC_IRQn); NRFX_IRQ_PRIORITY_SET(SAADC_IRQn, interrupt_priority); + m_cb.event_handler = NULL; err_code = NRFX_SUCCESS; NRFX_LOG_INFO("Function: %s, error code: %s.", __func__, NRFX_LOG_ERROR_STRING_GET(err_code)); @@ -282,6 +292,7 @@ void nrfx_saadc_uninit(void) nrfx_saadc_abort(); NRFX_IRQ_DISABLE(SAADC_IRQn); nrf_saadc_disable(NRF_SAADC); + saadc_channels_disable(m_cb.channels_configured | m_cb.channels_activated); m_cb.saadc_state = NRF_SAADC_STATE_UNINITIALIZED; } @@ -327,6 +338,13 @@ nrfx_err_t nrfx_saadc_channel_config(nrfx_saadc_channel_t const * p_channel) return NRFX_SUCCESS; } +uint32_t nrfx_saadc_channels_configured_get(void) +{ + NRFX_ASSERT(m_cb.saadc_state != NRF_SAADC_STATE_UNINITIALIZED); + + return m_cb.channels_configured; +} + nrfx_err_t nrfx_saadc_channels_deconfig(uint32_t channel_mask) { NRFX_ASSERT(m_cb.saadc_state != NRF_SAADC_STATE_UNINITIALIZED); @@ -621,20 +639,16 @@ void nrfx_saadc_abort(void) { NRFX_ASSERT(m_cb.saadc_state != NRF_SAADC_STATE_UNINITIALIZED); - if (!m_cb.event_handler) + if (m_cb.saadc_state == NRF_SAADC_STATE_CALIBRATION ? m_cb.calib_event_handler : + m_cb.event_handler) { - m_cb.p_buffer_primary = NULL; - m_cb.p_buffer_secondary = NULL; - m_cb.samples_converted = 0; + nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_STOP); } else { - nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_STOP); - if (m_cb.saadc_state == NRF_SAADC_STATE_CALIBRATION) - { - // STOPPED event does not appear when the calibration is ongoing - m_cb.saadc_state = NRF_SAADC_STATE_IDLE; - } + m_cb.p_buffer_primary = NULL; + m_cb.p_buffer_secondary = NULL; + m_cb.samples_converted = 0; } } @@ -688,7 +702,7 @@ nrfx_err_t nrfx_saadc_limits_set(uint8_t channel, int16_t limit_low, int16_t lim return NRFX_SUCCESS; } -nrfx_err_t nrfx_saadc_offset_calibrate(nrfx_saadc_event_handler_t event_handler) +nrfx_err_t nrfx_saadc_offset_calibrate(nrfx_saadc_event_handler_t calib_event_handler) { NRFX_ASSERT(m_cb.saadc_state != NRF_SAADC_STATE_UNINITIALIZED); @@ -697,50 +711,75 @@ nrfx_err_t nrfx_saadc_offset_calibrate(nrfx_saadc_event_handler_t event_handler) return NRFX_ERROR_BUSY; } + m_cb.saadc_state_prev = m_cb.saadc_state; m_cb.saadc_state = NRF_SAADC_STATE_CALIBRATION; - m_cb.event_handler = event_handler; + m_cb.calib_event_handler = calib_event_handler; nrf_saadc_enable(NRF_SAADC); -#if NRFX_CHECK(INTERCEPT_SAADC_CALIBRATION_SAMPLES) - nrf_saadc_buffer_init(NRF_SAADC, m_cb.calib_samples, NRFX_ARRAY_SIZE(m_cb.calib_samples)); - if (event_handler) + + uint32_t int_mask = nrf_saadc_int_enable_check(NRF_SAADC, ~0UL); + nrf_saadc_int_set(NRF_SAADC, 0); + nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_CALIBRATEOFFSET); + if (calib_event_handler) { - nrf_saadc_int_set(NRF_SAADC, NRF_SAADC_INT_STARTED | NRF_SAADC_INT_CALIBRATEDONE); - nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_START); + // Make sure that LIMIT feature is disabled before offset calibration. + int_mask &= ~(NRF_SAADC_INT_CH0LIMITL | NRF_SAADC_INT_CH0LIMITH); + nrf_saadc_int_set(NRF_SAADC, int_mask | NRF_SAADC_INT_STARTED | NRF_SAADC_INT_STOPPED | + NRF_SAADC_INT_END | NRF_SAADC_INT_CALIBRATEDONE); } else { + while (!nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE)) + {} + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE); + + nrf_saadc_buffer_init(NRF_SAADC, m_cb.calib_samples, NRFX_ARRAY_SIZE(m_cb.calib_samples)); nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_START); while (!nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_STARTED)) {} nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_STARTED); - nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_CALIBRATEOFFSET); - while (!nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE)) + nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_STOP); + while (!nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_STOPPED)) {} - nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE); + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_STOPPED); nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_END); nrf_saadc_disable(NRF_SAADC); - m_cb.saadc_state = NRF_SAADC_STATE_IDLE; + m_cb.saadc_state = m_cb.saadc_state_prev; + + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CH0_LIMITL); + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CH0_LIMITH); + nrf_saadc_int_set(NRF_SAADC, int_mask); } -#else - nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_CALIBRATEOFFSET); - if (event_handler) + + return NRFX_SUCCESS; +} + +static void saadc_pre_calibration_state_restore(void) +{ + nrf_saadc_disable(NRF_SAADC); + uint32_t int_mask = nrf_saadc_int_enable_check(NRF_SAADC, ~0UL) & + ~(NRF_SAADC_INT_STARTED | NRF_SAADC_INT_STOPPED | + NRF_SAADC_INT_END | NRF_SAADC_INT_CALIBRATEDONE); + m_cb.saadc_state = m_cb.saadc_state_prev; + if (m_cb.event_handler) { - nrf_saadc_int_enable(NRF_SAADC, NRF_SAADC_INT_CALIBRATEDONE); + // Restore interrupts that are used in sampling if user provided event handler + // during mode configuration. + int_mask |= NRF_SAADC_INT_STARTED | NRF_SAADC_INT_STOPPED | NRF_SAADC_INT_END; } - else + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CH0_LIMITL); + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CH0_LIMITH); + if (m_cb.limits_low_activated & 0x1UL) { - while (!nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE)) - {} - nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE); - nrf_saadc_disable(NRF_SAADC); - m_cb.saadc_state = NRF_SAADC_STATE_IDLE; + int_mask |= NRF_SAADC_INT_CH0LIMITL; } -#endif // NRFX_CHECK(INTERCEPT_SAADC_CALIBRATION_SAMPLES) - - return NRFX_SUCCESS; + if (m_cb.limits_high_activated & 0x1UL) + { + int_mask |= NRF_SAADC_INT_CH0LIMITH; + } + nrf_saadc_int_set(NRF_SAADC, int_mask); } static void saadc_event_started_handle(void) @@ -782,11 +821,11 @@ static void saadc_event_started_handle(void) nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_SAMPLE); break; -#if NRFX_CHECK(INTERCEPT_SAADC_CALIBRATION_SAMPLES) case NRF_SAADC_STATE_CALIBRATION: - nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_CALIBRATEOFFSET); + // Stop the SAADC immediately after the temporary buffer is latched to drop spurious samples. + // This will cause STOPPED and END events to arrive. + nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_STOP); break; -#endif default: break; @@ -813,18 +852,15 @@ static void saadc_event_end_handle(void) break; case NRF_SAADC_STATE_ADV_MODE_SAMPLE_STARTED: + if (m_cb.start_on_end && m_cb.p_buffer_secondary) + { + nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_START); + } m_cb.event_handler(&evt_data); m_cb.p_buffer_primary = m_cb.p_buffer_secondary; m_cb.size_primary = m_cb.size_secondary; m_cb.p_buffer_secondary = NULL; - if (m_cb.p_buffer_primary) - { - if (m_cb.start_on_end) - { - nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_START); - } - } - else + if (!m_cb.p_buffer_primary) { nrf_saadc_disable(NRF_SAADC); m_cb.saadc_state = NRF_SAADC_STATE_ADV_MODE; @@ -833,6 +869,13 @@ static void saadc_event_end_handle(void) } break; + case NRF_SAADC_STATE_CALIBRATION: + // Spurious samples were successfully dropped and they won't affect next conversion. + saadc_pre_calibration_state_restore(); + evt_data.type = NRFX_SAADC_EVT_CALIBRATEDONE; + m_cb.calib_event_handler(&evt_data); + break; + default: break; } @@ -861,50 +904,52 @@ static void saadc_event_limits_handle(uint8_t limits_activated, nrf_saadc_limit_ void nrfx_saadc_irq_handler(void) { - if (nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_STARTED)) + if (nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE)) { - nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_STARTED); - saadc_event_started_handle(); + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE); + nrf_saadc_int_disable(NRF_SAADC, NRF_SAADC_INT_CALIBRATEDONE); + // Latch the temporary buffer to intercept any spurious samples that may appear after calibration. + nrf_saadc_buffer_init(NRF_SAADC, m_cb.calib_samples, NRFX_ARRAY_SIZE(m_cb.calib_samples)); + nrf_saadc_task_trigger(NRF_SAADC, NRF_SAADC_TASK_START); } if (nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_STOPPED)) { nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_STOPPED); - // If there was ongoing conversion the STOP task also triggers the END event - m_cb.size_primary = nrf_saadc_amount_get(NRF_SAADC); - m_cb.p_buffer_secondary = NULL; + if (m_cb.saadc_state != NRF_SAADC_STATE_CALIBRATION) + { + // If there was ongoing conversion the STOP task also triggers the END event + m_cb.size_primary = nrf_saadc_amount_get(NRF_SAADC); + m_cb.p_buffer_secondary = NULL; + } + + if (nrf_saadc_int_enable_check(NRF_SAADC, NRF_SAADC_INT_CALIBRATEDONE)) + { + // If STOP event arrived before CALIBRATEDONE then the calibration was aborted + // and END event will not appear. + // Calibration procedure was not completed and user handler will not be called. + saadc_pre_calibration_state_restore(); + } /* fall-through to the END event handler */ } if (nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_END)) { nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_END); - -#if NRFX_CHECK(INTERCEPT_SAADC_CALIBRATION_SAMPLES) - // When samples are intercepted into scratch buffer during calibration, - // END event appears when the calibration finishes. This event should be ignored. - if (m_cb.saadc_state != NRF_SAADC_STATE_CALIBRATION) -#endif - { - saadc_event_end_handle(); - } + saadc_event_end_handle(); } - saadc_event_limits_handle(m_cb.limits_low_activated, NRF_SAADC_LIMIT_LOW); - saadc_event_limits_handle(m_cb.limits_high_activated, NRF_SAADC_LIMIT_HIGH); - - if (nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE)) + if (nrf_saadc_event_check(NRF_SAADC, NRF_SAADC_EVENT_STARTED)) { - nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_CALIBRATEDONE); - nrf_saadc_disable(NRF_SAADC); - - m_cb.saadc_state = NRF_SAADC_STATE_IDLE; - - nrfx_saadc_evt_t evt_data; - evt_data.type = NRFX_SAADC_EVT_CALIBRATEDONE; - m_cb.event_handler(&evt_data); + nrf_saadc_event_clear(NRF_SAADC, NRF_SAADC_EVENT_STARTED); + saadc_event_started_handle(); + } + if (m_cb.saadc_state != NRF_SAADC_STATE_CALIBRATION) + { + saadc_event_limits_handle(m_cb.limits_low_activated, NRF_SAADC_LIMIT_LOW); + saadc_event_limits_handle(m_cb.limits_high_activated, NRF_SAADC_LIMIT_HIGH); } } #endif // NRFX_CHECK(NRFX_SAADC_ENABLED) diff --git a/drivers/src/nrfx_spi.c b/drivers/src/nrfx_spi.c index 6a05a2802..715f6cd2d 100644 --- a/drivers/src/nrfx_spi.c +++ b/drivers/src/nrfx_spi.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_spim.c b/drivers/src/nrfx_spim.c index f05002517..352f334cd 100644 --- a/drivers/src/nrfx_spim.c +++ b/drivers/src/nrfx_spim.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_spis.c b/drivers/src/nrfx_spis.c index 44c545b79..ba946b767 100644 --- a/drivers/src/nrfx_spis.c +++ b/drivers/src/nrfx_spis.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2013 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2013 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_systick.c b/drivers/src/nrfx_systick.c index 8cc3cd595..dbde7bfa0 100644 --- a/drivers/src/nrfx_systick.c +++ b/drivers/src/nrfx_systick.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_temp.c b/drivers/src/nrfx_temp.c index a12554821..4ccd84a35 100644 --- a/drivers/src/nrfx_temp.c +++ b/drivers/src/nrfx_temp.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_timer.c b/drivers/src/nrfx_timer.c index 5d990e9d0..f8d2c674b 100644 --- a/drivers/src/nrfx_timer.c +++ b/drivers/src/nrfx_timer.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_twi.c b/drivers/src/nrfx_twi.c index 0e74f6edc..968a4ac3c 100644 --- a/drivers/src/nrfx_twi.c +++ b/drivers/src/nrfx_twi.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_twi_twim.c b/drivers/src/nrfx_twi_twim.c index ccb51bae0..1d8f47388 100644 --- a/drivers/src/nrfx_twi_twim.c +++ b/drivers/src/nrfx_twi_twim.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_twim.c b/drivers/src/nrfx_twim.c index ec9097970..aaf110046 100644 --- a/drivers/src/nrfx_twim.c +++ b/drivers/src/nrfx_twim.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_twis.c b/drivers/src/nrfx_twis.c index 71d9b9611..8651fb5fe 100644 --- a/drivers/src/nrfx_twis.c +++ b/drivers/src/nrfx_twis.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_uart.c b/drivers/src/nrfx_uart.c index bb8067dfc..0e13cbf26 100644 --- a/drivers/src/nrfx_uart.c +++ b/drivers/src/nrfx_uart.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_uarte.c b/drivers/src/nrfx_uarte.c index f1ffa083d..b8508ee88 100644 --- a/drivers/src/nrfx_uarte.c +++ b/drivers/src/nrfx_uarte.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_usbd.c b/drivers/src/nrfx_usbd.c index 4dcc0bc82..a121d73b9 100644 --- a/drivers/src/nrfx_usbd.c +++ b/drivers/src/nrfx_usbd.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_usbd_errata.h b/drivers/src/nrfx_usbd_errata.h index a75f7e347..1301aaddd 100644 --- a/drivers/src/nrfx_usbd_errata.h +++ b/drivers/src/nrfx_usbd_errata.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_usbreg.c b/drivers/src/nrfx_usbreg.c index 944f5ed30..484807741 100644 --- a/drivers/src/nrfx_usbreg.c +++ b/drivers/src/nrfx_usbreg.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/nrfx_wdt.c b/drivers/src/nrfx_wdt.c index 6324388d6..b4ffbc173 100644 --- a/drivers/src/nrfx_wdt.c +++ b/drivers/src/nrfx_wdt.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/prs/nrfx_prs.c b/drivers/src/prs/nrfx_prs.c index d1065d228..79258ee84 100644 --- a/drivers/src/prs/nrfx_prs.c +++ b/drivers/src/prs/nrfx_prs.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/drivers/src/prs/nrfx_prs.h b/drivers/src/prs/nrfx_prs.h index 47ab8909f..cae15ad9a 100644 --- a/drivers/src/prs/nrfx_prs.h +++ b/drivers/src/prs/nrfx_prs.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_aar.h b/hal/nrf_aar.h index 6ca4cb56e..d2aa75e37 100644 --- a/hal/nrf_aar.h +++ b/hal/nrf_aar.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_acl.h b/hal/nrf_acl.h index 4465dad8d..c30aeb993 100644 --- a/hal/nrf_acl.h +++ b/hal/nrf_acl.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_adc.h b/hal/nrf_adc.h index f7f76815a..765f47dbb 100644 --- a/hal/nrf_adc.h +++ b/hal/nrf_adc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_bprot.h b/hal/nrf_bprot.h index 03ecfe4d9..8cdb8eae0 100644 --- a/hal/nrf_bprot.h +++ b/hal/nrf_bprot.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_cache.h b/hal/nrf_cache.h index 07a13332e..7b161d059 100644 --- a/hal/nrf_cache.h +++ b/hal/nrf_cache.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_ccm.h b/hal/nrf_ccm.h index 5f5374279..5743231f5 100644 --- a/hal/nrf_ccm.h +++ b/hal/nrf_ccm.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_clock.h b/hal/nrf_clock.h index 3a934d7a1..908046c1e 100644 --- a/hal/nrf_clock.h +++ b/hal/nrf_clock.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_common.h b/hal/nrf_common.h index cceb533e8..a39529291 100644 --- a/hal/nrf_common.h +++ b/hal/nrf_common.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2020 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_comp.h b/hal/nrf_comp.h index f6b2e93c0..a7fe1f686 100644 --- a/hal/nrf_comp.h +++ b/hal/nrf_comp.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_dcnf.h b/hal/nrf_dcnf.h index 7a5d64cd2..15fba155c 100644 --- a/hal/nrf_dcnf.h +++ b/hal/nrf_dcnf.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_dppi.h b/hal/nrf_dppi.h index 4539ba427..a9f8284a6 100644 --- a/hal/nrf_dppi.h +++ b/hal/nrf_dppi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_ecb.h b/hal/nrf_ecb.h index 4c8149491..75d007dcd 100644 --- a/hal/nrf_ecb.h +++ b/hal/nrf_ecb.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2012 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_egu.h b/hal/nrf_egu.h index ffce57a81..f91a32709 100644 --- a/hal/nrf_egu.h +++ b/hal/nrf_egu.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_ficr.h b/hal/nrf_ficr.h index d00f8d221..049513d6f 100644 --- a/hal/nrf_ficr.h +++ b/hal/nrf_ficr.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_fpu.h b/hal/nrf_fpu.h index 3a40bb79f..93ad12061 100644 --- a/hal/nrf_fpu.h +++ b/hal/nrf_fpu.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_gpio.h b/hal/nrf_gpio.h index be14dc94f..4f5745f71 100644 --- a/hal/nrf_gpio.h +++ b/hal/nrf_gpio.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_gpiote.h b/hal/nrf_gpiote.h index 8c4b5f874..59050bd41 100644 --- a/hal/nrf_gpiote.h +++ b/hal/nrf_gpiote.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_i2s.h b/hal/nrf_i2s.h index c74aeb330..f5eb3efb5 100644 --- a/hal/nrf_i2s.h +++ b/hal/nrf_i2s.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_ipc.h b/hal/nrf_ipc.h index 1f99c1a5b..6070b766e 100644 --- a/hal/nrf_ipc.h +++ b/hal/nrf_ipc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_kmu.h b/hal/nrf_kmu.h index bcf1cf9f6..ad539f908 100644 --- a/hal/nrf_kmu.h +++ b/hal/nrf_kmu.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_lpcomp.h b/hal/nrf_lpcomp.h index 38d5bab00..b48aa1737 100644 --- a/hal/nrf_lpcomp.h +++ b/hal/nrf_lpcomp.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_mpu.h b/hal/nrf_mpu.h index f2939cb02..16be045c8 100644 --- a/hal/nrf_mpu.h +++ b/hal/nrf_mpu.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_mutex.h b/hal/nrf_mutex.h index 9a5170020..be46b6546 100644 --- a/hal/nrf_mutex.h +++ b/hal/nrf_mutex.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_mwu.h b/hal/nrf_mwu.h index 876a93f88..644eeb412 100644 --- a/hal/nrf_mwu.h +++ b/hal/nrf_mwu.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_nfct.h b/hal/nrf_nfct.h index 831a278a0..137a248b9 100644 --- a/hal/nrf_nfct.h +++ b/hal/nrf_nfct.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_nvmc.h b/hal/nrf_nvmc.h index d9d16a274..94d5cf253 100644 --- a/hal/nrf_nvmc.h +++ b/hal/nrf_nvmc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2012 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_oscillators.h b/hal/nrf_oscillators.h index b00b1b6b4..5390b1621 100644 --- a/hal/nrf_oscillators.h +++ b/hal/nrf_oscillators.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_pdm.h b/hal/nrf_pdm.h index fb628cbdf..afd9e1722 100644 --- a/hal/nrf_pdm.h +++ b/hal/nrf_pdm.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_power.h b/hal/nrf_power.h index 8c871aba2..254770c09 100644 --- a/hal/nrf_power.h +++ b/hal/nrf_power.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_ppi.h b/hal/nrf_ppi.h index e2059b0f0..1657bdf77 100644 --- a/hal/nrf_ppi.h +++ b/hal/nrf_ppi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_pwm.h b/hal/nrf_pwm.h index c895d5cb1..75ca1e2ad 100644 --- a/hal/nrf_pwm.h +++ b/hal/nrf_pwm.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_qdec.h b/hal/nrf_qdec.h index 63ec459bf..afaabc0bf 100644 --- a/hal/nrf_qdec.h +++ b/hal/nrf_qdec.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_qspi.h b/hal/nrf_qspi.h index c0821c030..f0a8112d2 100644 --- a/hal/nrf_qspi.h +++ b/hal/nrf_qspi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_radio.h b/hal/nrf_radio.h index ddb5f3a8f..20bb8d5aa 100644 --- a/hal/nrf_radio.h +++ b/hal/nrf_radio.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_regulators.h b/hal/nrf_regulators.h index 7f9c37990..aaa352f35 100644 --- a/hal/nrf_regulators.h +++ b/hal/nrf_regulators.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_reset.h b/hal/nrf_reset.h index 870fd12da..219192158 100644 --- a/hal/nrf_reset.h +++ b/hal/nrf_reset.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_rng.h b/hal/nrf_rng.h index c01277ec6..54da5b163 100644 --- a/hal/nrf_rng.h +++ b/hal/nrf_rng.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_rtc.h b/hal/nrf_rtc.h index 0e1cec5e3..e93d52a15 100644 --- a/hal/nrf_rtc.h +++ b/hal/nrf_rtc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_saadc.h b/hal/nrf_saadc.h index 4b6c66f51..89c722913 100644 --- a/hal/nrf_saadc.h +++ b/hal/nrf_saadc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_spi.h b/hal/nrf_spi.h index 4c4e380b0..f9c5fe8ae 100644 --- a/hal/nrf_spi.h +++ b/hal/nrf_spi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_spim.h b/hal/nrf_spim.h index 64bced046..12a5947c2 100644 --- a/hal/nrf_spim.h +++ b/hal/nrf_spim.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_spis.h b/hal/nrf_spis.h index 592410e8d..710a8efa6 100644 --- a/hal/nrf_spis.h +++ b/hal/nrf_spis.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_spu.h b/hal/nrf_spu.h index d2558aab9..23266a63f 100644 --- a/hal/nrf_spu.h +++ b/hal/nrf_spu.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_systick.h b/hal/nrf_systick.h index 189caeb0c..faa264d73 100644 --- a/hal/nrf_systick.h +++ b/hal/nrf_systick.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_temp.h b/hal/nrf_temp.h index 7f1262f29..d254742ed 100644 --- a/hal/nrf_temp.h +++ b/hal/nrf_temp.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2012 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2012 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_timer.h b/hal/nrf_timer.h index d38d09c1e..699dc43b3 100644 --- a/hal/nrf_timer.h +++ b/hal/nrf_timer.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2014 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2014 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_twi.h b/hal/nrf_twi.h index dd3220f77..df76f9832 100644 --- a/hal/nrf_twi.h +++ b/hal/nrf_twi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_twim.h b/hal/nrf_twim.h index e3b2e2a65..75dcb2dbc 100644 --- a/hal/nrf_twim.h +++ b/hal/nrf_twim.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_twis.h b/hal/nrf_twis.h index 45f295494..bf03f8730 100644 --- a/hal/nrf_twis.h +++ b/hal/nrf_twis.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_uart.h b/hal/nrf_uart.h index 1d632d3ce..d40d4cdc9 100644 --- a/hal/nrf_uart.h +++ b/hal/nrf_uart.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_uarte.h b/hal/nrf_uarte.h index 337144316..3e47ef6a0 100644 --- a/hal/nrf_uarte.h +++ b/hal/nrf_uarte.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_usbd.h b/hal/nrf_usbd.h index e0120609c..de37abd7a 100644 --- a/hal/nrf_usbd.h +++ b/hal/nrf_usbd.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_usbreg.h b/hal/nrf_usbreg.h index 574d4b328..70be39542 100644 --- a/hal/nrf_usbreg.h +++ b/hal/nrf_usbreg.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_vmc.h b/hal/nrf_vmc.h index 54b103b73..f610d7501 100644 --- a/hal/nrf_vmc.h +++ b/hal/nrf_vmc.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_vreqctrl.h b/hal/nrf_vreqctrl.h index 3bcdfd30e..b9a1fd825 100644 --- a/hal/nrf_vreqctrl.h +++ b/hal/nrf_vreqctrl.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/hal/nrf_wdt.h b/hal/nrf_wdt.h index 3343d1c7f..457378f13 100644 --- a/hal/nrf_wdt.h +++ b/hal/nrf_wdt.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2015 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2015 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/helpers/nrfx_flag32_allocator.c b/helpers/nrfx_flag32_allocator.c index f0f0be3b7..41fdf4c86 100644 --- a/helpers/nrfx_flag32_allocator.c +++ b/helpers/nrfx_flag32_allocator.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021, Nordic Semiconductor ASA + * Copyright (c) 2021 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/helpers/nrfx_flag32_allocator.h b/helpers/nrfx_flag32_allocator.h index 186772f59..d8315480d 100644 --- a/helpers/nrfx_flag32_allocator.h +++ b/helpers/nrfx_flag32_allocator.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021, Nordic Semiconductor ASA + * Copyright (c) 2021 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/helpers/nrfx_gppi.h b/helpers/nrfx_gppi.h index d78c345aa..9555ce267 100644 --- a/helpers/nrfx_gppi.h +++ b/helpers/nrfx_gppi.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/helpers/nrfx_reset_reason.h b/helpers/nrfx_reset_reason.h index c5f81b619..b2c1b3cd2 100644 --- a/helpers/nrfx_reset_reason.h +++ b/helpers/nrfx_reset_reason.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2020 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/nrfx.h b/nrfx.h index e5bda3765..4c43d8997 100644 --- a/nrfx.h +++ b/nrfx.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_atomic.c b/soc/nrfx_atomic.c index eea621095..81bc9cb57 100644 --- a/soc/nrfx_atomic.c +++ b/soc/nrfx_atomic.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_atomic.h b/soc/nrfx_atomic.h index aa761dd76..9efb0c43c 100644 --- a/soc/nrfx_atomic.h +++ b/soc/nrfx_atomic.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_atomic_internal.h b/soc/nrfx_atomic_internal.h index 349ec119c..2db0c5221 100644 --- a/soc/nrfx_atomic_internal.h +++ b/soc/nrfx_atomic_internal.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2016 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2016 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_coredep.h b/soc/nrfx_coredep.h index f597d8bfb..ee5356973 100644 --- a/soc/nrfx_coredep.h +++ b/soc/nrfx_coredep.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs.h b/soc/nrfx_irqs.h index 43591c8b0..3eae86cc9 100644 --- a/soc/nrfx_irqs.h +++ b/soc/nrfx_irqs.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf51.h b/soc/nrfx_irqs_nrf51.h index 9375140f4..3561f489b 100644 --- a/soc/nrfx_irqs_nrf51.h +++ b/soc/nrfx_irqs_nrf51.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf52805.h b/soc/nrfx_irqs_nrf52805.h index e549296f4..cda5afdce 100644 --- a/soc/nrfx_irqs_nrf52805.h +++ b/soc/nrfx_irqs_nrf52805.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2020 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf52810.h b/soc/nrfx_irqs_nrf52810.h index 124edc5d5..764345db0 100644 --- a/soc/nrfx_irqs_nrf52810.h +++ b/soc/nrfx_irqs_nrf52810.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf52811.h b/soc/nrfx_irqs_nrf52811.h index 1956286d9..727aaebb7 100644 --- a/soc/nrfx_irqs_nrf52811.h +++ b/soc/nrfx_irqs_nrf52811.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf52820.h b/soc/nrfx_irqs_nrf52820.h index b4f3a4ff8..ca8060602 100644 --- a/soc/nrfx_irqs_nrf52820.h +++ b/soc/nrfx_irqs_nrf52820.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2020 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf52832.h b/soc/nrfx_irqs_nrf52832.h index def1ea3ea..dcf67c48f 100644 --- a/soc/nrfx_irqs_nrf52832.h +++ b/soc/nrfx_irqs_nrf52832.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf52833.h b/soc/nrfx_irqs_nrf52833.h index ab21966ad..806d07067 100644 --- a/soc/nrfx_irqs_nrf52833.h +++ b/soc/nrfx_irqs_nrf52833.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf52840.h b/soc/nrfx_irqs_nrf52840.h index 16f6fd707..a64a0ee41 100644 --- a/soc/nrfx_irqs_nrf52840.h +++ b/soc/nrfx_irqs_nrf52840.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf5340_application.h b/soc/nrfx_irqs_nrf5340_application.h index 549319131..9e5632ad7 100644 --- a/soc/nrfx_irqs_nrf5340_application.h +++ b/soc/nrfx_irqs_nrf5340_application.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf5340_network.h b/soc/nrfx_irqs_nrf5340_network.h index 8f8925305..abb4191e3 100644 --- a/soc/nrfx_irqs_nrf5340_network.h +++ b/soc/nrfx_irqs_nrf5340_network.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/soc/nrfx_irqs_nrf9160.h b/soc/nrfx_irqs_nrf9160.h index f25f66431..a40860409 100644 --- a/soc/nrfx_irqs_nrf9160.h +++ b/soc/nrfx_irqs_nrf9160.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config.h b/templates/nrfx_config.h index dccf675dc..f094a16c1 100644 --- a/templates/nrfx_config.h +++ b/templates/nrfx_config.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf51.h b/templates/nrfx_config_nrf51.h index 463fc14ab..1dc346bcf 100644 --- a/templates/nrfx_config_nrf51.h +++ b/templates/nrfx_config_nrf51.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf52805.h b/templates/nrfx_config_nrf52805.h index 41d4d2330..8ff165ba9 100644 --- a/templates/nrfx_config_nrf52805.h +++ b/templates/nrfx_config_nrf52805.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2020 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf52810.h b/templates/nrfx_config_nrf52810.h index 3952bd7bd..5c3a07e6d 100644 --- a/templates/nrfx_config_nrf52810.h +++ b/templates/nrfx_config_nrf52810.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf52811.h b/templates/nrfx_config_nrf52811.h index 906ace733..dbd30fcf1 100644 --- a/templates/nrfx_config_nrf52811.h +++ b/templates/nrfx_config_nrf52811.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf52820.h b/templates/nrfx_config_nrf52820.h index 961f0b1ae..d59d33b0d 100644 --- a/templates/nrfx_config_nrf52820.h +++ b/templates/nrfx_config_nrf52820.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2020 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf52832.h b/templates/nrfx_config_nrf52832.h index e27040807..7ce8e037f 100644 --- a/templates/nrfx_config_nrf52832.h +++ b/templates/nrfx_config_nrf52832.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf52833.h b/templates/nrfx_config_nrf52833.h index 657080638..237369a94 100644 --- a/templates/nrfx_config_nrf52833.h +++ b/templates/nrfx_config_nrf52833.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf52840.h b/templates/nrfx_config_nrf52840.h index e9a388b91..90fe54b63 100644 --- a/templates/nrfx_config_nrf52840.h +++ b/templates/nrfx_config_nrf52840.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf5340_application.h b/templates/nrfx_config_nrf5340_application.h index 40feb4c0f..023db993d 100644 --- a/templates/nrfx_config_nrf5340_application.h +++ b/templates/nrfx_config_nrf5340_application.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf5340_network.h b/templates/nrfx_config_nrf5340_network.h index 0e78d2d32..0daac0967 100644 --- a/templates/nrfx_config_nrf5340_network.h +++ b/templates/nrfx_config_nrf5340_network.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2019 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2019 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_config_nrf9160.h b/templates/nrfx_config_nrf9160.h index ed1a9e475..5419fd2e5 100644 --- a/templates/nrfx_config_nrf9160.h +++ b/templates/nrfx_config_nrf9160.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2018 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2018 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_glue.h b/templates/nrfx_glue.h index d40520f7a..e2660755d 100644 --- a/templates/nrfx_glue.h +++ b/templates/nrfx_glue.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause diff --git a/templates/nrfx_log.h b/templates/nrfx_log.h index cbbb2f9eb..8d03ffa60 100644 --- a/templates/nrfx_log.h +++ b/templates/nrfx_log.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2017 - 2021, Nordic Semiconductor ASA + * Copyright (c) 2017 - 2022, Nordic Semiconductor ASA * All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause