follow #1
seperate files from latest SDK (currently 14.2.0) from good old non- secure bootloader sdk 11
This commit is contained in:
parent
f18643ae10
commit
df71d3444d
@ -64,7 +64,7 @@ OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
|||||||
|
|
||||||
#if defined(_WIN32)
|
#if defined(_WIN32)
|
||||||
/* Do not include nrf specific files when building for PC host */
|
/* Do not include nrf specific files when building for PC host */
|
||||||
//#elif defined(__unix)
|
#elif defined(__unix)
|
||||||
/* Do not include nrf specific files when building for PC host */
|
/* Do not include nrf specific files when building for PC host */
|
||||||
#elif defined(__APPLE__)
|
#elif defined(__APPLE__)
|
||||||
/* Do not include nrf specific files when building for PC host */
|
/* Do not include nrf specific files when building for PC host */
|
141
lib/sdk/components/drivers_nrf/usbd/nrf_drv_usbd_errata.h
Normal file
141
lib/sdk/components/drivers_nrf/usbd/nrf_drv_usbd_errata.h
Normal file
@ -0,0 +1,141 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) 2017 - 2017, Nordic Semiconductor ASA
|
||||||
|
*
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
* are permitted provided that the following conditions are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
* list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* 2. Redistributions in binary form, except as embedded into a Nordic
|
||||||
|
* Semiconductor ASA integrated circuit in a product or a software update for
|
||||||
|
* such product, must reproduce the above copyright notice, this list of
|
||||||
|
* conditions and the following disclaimer in the documentation and/or other
|
||||||
|
* materials provided with the distribution.
|
||||||
|
*
|
||||||
|
* 3. Neither the name of Nordic Semiconductor ASA nor the names of its
|
||||||
|
* contributors may be used to endorse or promote products derived from this
|
||||||
|
* software without specific prior written permission.
|
||||||
|
*
|
||||||
|
* 4. This software, with or without modification, must only be used with a
|
||||||
|
* Nordic Semiconductor ASA integrated circuit.
|
||||||
|
*
|
||||||
|
* 5. Any software provided in binary form under this license must not be reverse
|
||||||
|
* engineered, decompiled, modified and/or disassembled.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
|
||||||
|
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
* OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
|
||||||
|
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||||
|
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||||
|
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||||
|
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef NRF_DRV_USBD_ERRATA_H__
|
||||||
|
#define NRF_DRV_USBD_ERRATA_H__
|
||||||
|
|
||||||
|
#include <stdbool.h>
|
||||||
|
/**
|
||||||
|
* @defgroup nrf_drv_usbd_errata Functions to check if selected PAN is present in current chip
|
||||||
|
* @{
|
||||||
|
* @ingroup nrf_drv_usbd
|
||||||
|
*
|
||||||
|
* Functions here are checking the presence of an error in current chip.
|
||||||
|
* The checking is done at runtime based on the microcontroller version.
|
||||||
|
* This file is subject to removal when nRF51840 prototype support is removed.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef NRF_DRV_USBD_ERRATA_ENABLE
|
||||||
|
/**
|
||||||
|
* @brief The constant that informs if errata should be enabled at all
|
||||||
|
*
|
||||||
|
* If this constant is set to 0, all the Errata bug fixes will be automatically disabled.
|
||||||
|
*/
|
||||||
|
#define NRF_DRV_USBD_ERRATA_ENABLE 1
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Internal auxiliary function to check if the program is running on NRF52840 chip
|
||||||
|
* @retval true It is NRF52480 chip
|
||||||
|
* @retval false It is other chip
|
||||||
|
*/
|
||||||
|
static inline bool nrf_drv_usbd_errata_type_52840(void)
|
||||||
|
{
|
||||||
|
return ((((*(uint32_t *)0xF0000FE0) & 0xFF) == 0x08) &&
|
||||||
|
(((*(uint32_t *)0xF0000FE4) & 0x0F) == 0x0));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Internal auxiliary function to check if the program is running on first sample of
|
||||||
|
* NRF52840 chip
|
||||||
|
* @retval true It is NRF52480 chip and it is first sample version
|
||||||
|
* @retval false It is other chip
|
||||||
|
*/
|
||||||
|
static inline bool nrf_drv_usbd_errata_type_52840_proto1(void)
|
||||||
|
{
|
||||||
|
return ( nrf_drv_usbd_errata_type_52840() &&
|
||||||
|
( ((*(uint32_t *)0xF0000FE8) & 0xF0) == 0x00 ) &&
|
||||||
|
( ((*(uint32_t *)0xF0000FEC) & 0xF0) == 0x00 ) );
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Function to check if chip requires errata 104
|
||||||
|
*
|
||||||
|
* Errata: USBD: EPDATA event is not always generated.
|
||||||
|
*
|
||||||
|
* @retval true Errata should be implemented
|
||||||
|
* @retval false Errata should not be implemented
|
||||||
|
*/
|
||||||
|
static inline bool nrf_drv_usbd_errata_104(void)
|
||||||
|
{
|
||||||
|
return NRF_DRV_USBD_ERRATA_ENABLE && nrf_drv_usbd_errata_type_52840_proto1();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Function to check if chip requires errata 154
|
||||||
|
*
|
||||||
|
* Errata: During setup read/write transfer USBD acknowledges setup stage without SETUP task.
|
||||||
|
*
|
||||||
|
* @retval true Errata should be implemented
|
||||||
|
* @retval false Errata should not be implemented
|
||||||
|
*/
|
||||||
|
static inline bool nrf_drv_usbd_errata_154(void)
|
||||||
|
{
|
||||||
|
return NRF_DRV_USBD_ERRATA_ENABLE && nrf_drv_usbd_errata_type_52840_proto1();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Function to check if chip requires errata 166
|
||||||
|
*
|
||||||
|
* Errata: ISO double buffering not functional
|
||||||
|
*
|
||||||
|
* @retval true Errata should be implemented
|
||||||
|
* @retval false Errata should not be implemented
|
||||||
|
*/
|
||||||
|
static inline bool nrf_drv_usbd_errata_166(void)
|
||||||
|
{
|
||||||
|
return NRF_DRV_USBD_ERRATA_ENABLE && true;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @brief Function to check if chip requires errata ???
|
||||||
|
*
|
||||||
|
* Errata: SIZE.EPOUT not writable
|
||||||
|
*
|
||||||
|
* @retval true Errata should be implemented
|
||||||
|
* @retval false Errata should not be implemented
|
||||||
|
*/
|
||||||
|
static inline bool nrf_drv_usbd_errata_sizeepout_rw(void)
|
||||||
|
{
|
||||||
|
return NRF_DRV_USBD_ERRATA_ENABLE && nrf_drv_usbd_errata_type_52840_proto1();
|
||||||
|
}
|
||||||
|
|
||||||
|
/** @} */
|
||||||
|
#endif /* NRF_DRV_USBD_ERRATA_H__ */
|
85
lib/sdk/components/libraries/util/app_error_weak.h
Normal file
85
lib/sdk/components/libraries/util/app_error_weak.h
Normal file
@ -0,0 +1,85 @@
|
|||||||
|
/**
|
||||||
|
* Copyright (c) 2016 - 2017, Nordic Semiconductor ASA
|
||||||
|
*
|
||||||
|
* All rights reserved.
|
||||||
|
*
|
||||||
|
* Redistribution and use in source and binary forms, with or without modification,
|
||||||
|
* are permitted provided that the following conditions are met:
|
||||||
|
*
|
||||||
|
* 1. Redistributions of source code must retain the above copyright notice, this
|
||||||
|
* list of conditions and the following disclaimer.
|
||||||
|
*
|
||||||
|
* 2. Redistributions in binary form, except as embedded into a Nordic
|
||||||
|
* Semiconductor ASA integrated circuit in a product or a software update for
|
||||||
|
* such product, must reproduce the above copyright notice, this list of
|
||||||
|
* conditions and the following disclaimer in the documentation and/or other
|
||||||
|
* materials provided with the distribution.
|
||||||
|
*
|
||||||
|
* 3. Neither the name of Nordic Semiconductor ASA nor the names of its
|
||||||
|
* contributors may be used to endorse or promote products derived from this
|
||||||
|
* software without specific prior written permission.
|
||||||
|
*
|
||||||
|
* 4. This software, with or without modification, must only be used with a
|
||||||
|
* Nordic Semiconductor ASA integrated circuit.
|
||||||
|
*
|
||||||
|
* 5. Any software provided in binary form under this license must not be reverse
|
||||||
|
* engineered, decompiled, modified and/or disassembled.
|
||||||
|
*
|
||||||
|
* THIS SOFTWARE IS PROVIDED BY NORDIC SEMICONDUCTOR ASA "AS IS" AND ANY EXPRESS
|
||||||
|
* OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
|
||||||
|
* OF MERCHANTABILITY, NONINFRINGEMENT, AND FITNESS FOR A PARTICULAR PURPOSE ARE
|
||||||
|
* DISCLAIMED. IN NO EVENT SHALL NORDIC SEMICONDUCTOR ASA OR CONTRIBUTORS BE
|
||||||
|
* LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
||||||
|
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
|
||||||
|
* GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
|
||||||
|
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
|
||||||
|
* LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
|
||||||
|
* OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
#ifndef APP_ERROR_WEAK_H__
|
||||||
|
#define APP_ERROR_WEAK_H__
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
extern "C" {
|
||||||
|
#endif
|
||||||
|
|
||||||
|
/** @file
|
||||||
|
*
|
||||||
|
* @defgroup app_error Common application error handler
|
||||||
|
* @{
|
||||||
|
* @ingroup app_common
|
||||||
|
*
|
||||||
|
* @brief Common application error handler.
|
||||||
|
*/
|
||||||
|
|
||||||
|
/**@brief Callback function for errors, asserts, and faults.
|
||||||
|
*
|
||||||
|
* @details This function is called every time an error is raised in app_error, nrf_assert, or
|
||||||
|
* in the SoftDevice. Information about the error can be found in the @p info
|
||||||
|
* parameter.
|
||||||
|
*
|
||||||
|
* See also @ref nrf_fault_handler_t for more details.
|
||||||
|
*
|
||||||
|
* @note The function is implemented as weak so that it can be redefined by a custom error
|
||||||
|
* handler when needed.
|
||||||
|
*
|
||||||
|
* @param[in] id Fault identifier. See @ref NRF_FAULT_IDS.
|
||||||
|
* @param[in] pc The program counter of the instruction that triggered the fault, or 0 if
|
||||||
|
* unavailable.
|
||||||
|
* @param[in] info Optional additional information regarding the fault. The value of the @p id
|
||||||
|
* parameter dictates how to interpret this parameter. Refer to the documentation
|
||||||
|
* for each fault identifier (@ref NRF_FAULT_IDS and @ref APP_ERROR_FAULT_IDS) for
|
||||||
|
* details about interpreting @p info.
|
||||||
|
*/
|
||||||
|
void app_error_fault_handler(uint32_t id, uint32_t pc, uint32_t info);
|
||||||
|
|
||||||
|
|
||||||
|
/** @} */
|
||||||
|
|
||||||
|
|
||||||
|
#ifdef __cplusplus
|
||||||
|
}
|
||||||
|
#endif
|
||||||
|
|
||||||
|
#endif // APP_ERROR_WEAK_H__
|
@ -38,130 +38,6 @@
|
|||||||
* POSSIBILITY OF SUCH DAMAGE.
|
* POSSIBILITY OF SUCH DAMAGE.
|
||||||
* -------------------------------------------------------------------- */
|
* -------------------------------------------------------------------- */
|
||||||
|
|
||||||
/**
|
|
||||||
\mainpage CMSIS DSP Software Library
|
|
||||||
*
|
|
||||||
* Introduction
|
|
||||||
* ------------
|
|
||||||
*
|
|
||||||
* This user manual describes the CMSIS DSP software library,
|
|
||||||
* a suite of common signal processing functions for use on Cortex-M processor based devices.
|
|
||||||
*
|
|
||||||
* The library is divided into a number of functions each covering a specific category:
|
|
||||||
* - Basic math functions
|
|
||||||
* - Fast math functions
|
|
||||||
* - Complex math functions
|
|
||||||
* - Filters
|
|
||||||
* - Matrix functions
|
|
||||||
* - Transforms
|
|
||||||
* - Motor control functions
|
|
||||||
* - Statistical functions
|
|
||||||
* - Support functions
|
|
||||||
* - Interpolation functions
|
|
||||||
*
|
|
||||||
* The library has separate functions for operating on 8-bit integers, 16-bit integers,
|
|
||||||
* 32-bit integer and 32-bit floating-point values.
|
|
||||||
*
|
|
||||||
* Using the Library
|
|
||||||
* ------------
|
|
||||||
*
|
|
||||||
* The library installer contains prebuilt versions of the libraries in the <code>Lib</code> folder.
|
|
||||||
* - arm_cortexM7lfdp_math.lib (Little endian and Double Precision Floating Point Unit on Cortex-M7)
|
|
||||||
* - arm_cortexM7bfdp_math.lib (Big endian and Double Precision Floating Point Unit on Cortex-M7)
|
|
||||||
* - arm_cortexM7lfsp_math.lib (Little endian and Single Precision Floating Point Unit on Cortex-M7)
|
|
||||||
* - arm_cortexM7bfsp_math.lib (Big endian and Single Precision Floating Point Unit on Cortex-M7)
|
|
||||||
* - arm_cortexM7l_math.lib (Little endian on Cortex-M7)
|
|
||||||
* - arm_cortexM7b_math.lib (Big endian on Cortex-M7)
|
|
||||||
* - arm_cortexM4lf_math.lib (Little endian and Floating Point Unit on Cortex-M4)
|
|
||||||
* - arm_cortexM4bf_math.lib (Big endian and Floating Point Unit on Cortex-M4)
|
|
||||||
* - arm_cortexM4l_math.lib (Little endian on Cortex-M4)
|
|
||||||
* - arm_cortexM4b_math.lib (Big endian on Cortex-M4)
|
|
||||||
* - arm_cortexM3l_math.lib (Little endian on Cortex-M3)
|
|
||||||
* - arm_cortexM3b_math.lib (Big endian on Cortex-M3)
|
|
||||||
* - arm_cortexM0l_math.lib (Little endian on Cortex-M0 / CortexM0+)
|
|
||||||
* - arm_cortexM0b_math.lib (Big endian on Cortex-M0 / CortexM0+)
|
|
||||||
*
|
|
||||||
* The library functions are declared in the public file <code>arm_math.h</code> which is placed in the <code>Include</code> folder.
|
|
||||||
* Simply include this file and link the appropriate library in the application and begin calling the library functions. The Library supports single
|
|
||||||
* public header file <code> arm_math.h</code> for Cortex-M7/M4/M3/M0/M0+ with little endian and big endian. Same header file will be used for floating point unit(FPU) variants.
|
|
||||||
* Define the appropriate pre processor MACRO ARM_MATH_CM7 or ARM_MATH_CM4 or ARM_MATH_CM3 or
|
|
||||||
* ARM_MATH_CM0 or ARM_MATH_CM0PLUS depending on the target processor in the application.
|
|
||||||
*
|
|
||||||
* Examples
|
|
||||||
* --------
|
|
||||||
*
|
|
||||||
* The library ships with a number of examples which demonstrate how to use the library functions.
|
|
||||||
*
|
|
||||||
* Toolchain Support
|
|
||||||
* ------------
|
|
||||||
*
|
|
||||||
* The library has been developed and tested with MDK-ARM version 5.14.0.0
|
|
||||||
* The library is being tested in GCC and IAR toolchains and updates on this activity will be made available shortly.
|
|
||||||
*
|
|
||||||
* Building the Library
|
|
||||||
* ------------
|
|
||||||
*
|
|
||||||
* The library installer contains a project file to re build libraries on MDK-ARM Tool chain in the <code>CMSIS\\DSP_Lib\\Source\\ARM</code> folder.
|
|
||||||
* - arm_cortexM_math.uvprojx
|
|
||||||
*
|
|
||||||
*
|
|
||||||
* The libraries can be built by opening the arm_cortexM_math.uvprojx project in MDK-ARM, selecting a specific target, and defining the optional pre processor MACROs detailed above.
|
|
||||||
*
|
|
||||||
* Pre-processor Macros
|
|
||||||
* ------------
|
|
||||||
*
|
|
||||||
* Each library project have differant pre-processor macros.
|
|
||||||
*
|
|
||||||
* - UNALIGNED_SUPPORT_DISABLE:
|
|
||||||
*
|
|
||||||
* Define macro UNALIGNED_SUPPORT_DISABLE, If the silicon does not support unaligned memory access
|
|
||||||
*
|
|
||||||
* - ARM_MATH_BIG_ENDIAN:
|
|
||||||
*
|
|
||||||
* Define macro ARM_MATH_BIG_ENDIAN to build the library for big endian targets. By default library builds for little endian targets.
|
|
||||||
*
|
|
||||||
* - ARM_MATH_MATRIX_CHECK:
|
|
||||||
*
|
|
||||||
* Define macro ARM_MATH_MATRIX_CHECK for checking on the input and output sizes of matrices
|
|
||||||
*
|
|
||||||
* - ARM_MATH_ROUNDING:
|
|
||||||
*
|
|
||||||
* Define macro ARM_MATH_ROUNDING for rounding on support functions
|
|
||||||
*
|
|
||||||
* - ARM_MATH_CMx:
|
|
||||||
*
|
|
||||||
* Define macro ARM_MATH_CM4 for building the library on Cortex-M4 target, ARM_MATH_CM3 for building library on Cortex-M3 target
|
|
||||||
* and ARM_MATH_CM0 for building library on Cortex-M0 target, ARM_MATH_CM0PLUS for building library on Cortex-M0+ target, and
|
|
||||||
* ARM_MATH_CM7 for building the library on cortex-M7.
|
|
||||||
*
|
|
||||||
* - __FPU_PRESENT:
|
|
||||||
*
|
|
||||||
* Initialize macro __FPU_PRESENT = 1 when building on FPU supported Targets. Enable this macro for M4bf and M4lf libraries
|
|
||||||
*
|
|
||||||
* <hr>
|
|
||||||
* CMSIS-DSP in ARM::CMSIS Pack
|
|
||||||
* -----------------------------
|
|
||||||
*
|
|
||||||
* The following files relevant to CMSIS-DSP are present in the <b>ARM::CMSIS</b> Pack directories:
|
|
||||||
* |File/Folder |Content |
|
|
||||||
* |------------------------------|------------------------------------------------------------------------|
|
|
||||||
* |\b CMSIS\\Documentation\\DSP | This documentation |
|
|
||||||
* |\b CMSIS\\DSP_Lib | Software license agreement (license.txt) |
|
|
||||||
* |\b CMSIS\\DSP_Lib\\Examples | Example projects demonstrating the usage of the library functions |
|
|
||||||
* |\b CMSIS\\DSP_Lib\\Source | Source files for rebuilding the library |
|
|
||||||
*
|
|
||||||
* <hr>
|
|
||||||
* Revision History of CMSIS-DSP
|
|
||||||
* ------------
|
|
||||||
* Please refer to \ref ChangeLog_pg.
|
|
||||||
*
|
|
||||||
* Copyright Notice
|
|
||||||
* ------------
|
|
||||||
*
|
|
||||||
* Copyright (C) 2010-2015 ARM Limited. All rights reserved.
|
|
||||||
*/
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @defgroup groupMath Basic Math Functions
|
* @defgroup groupMath Basic Math Functions
|
||||||
*/
|
*/
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue
Block a user