1 /* 2 * Copyright (c) 2016 - 2023, Nordic Semiconductor ASA 3 * 4 * SPDX-License-Identifier: Apache-2.0 5 */ 6 7 /* This file is undergoing transition towards native Zephyr nrf USB driver. */ 8 9 /** @cond INTERNAL_HIDDEN */ 10 11 #ifndef NRF_USBD_COMMON_ERRATA_H__ 12 #define NRF_USBD_COMMON_ERRATA_H__ 13 14 #include <nrfx.h> 15 #include <nrf_erratas.h> 16 17 #ifndef NRF_USBD_COMMON_ERRATA_ENABLE 18 /** 19 * @brief The constant that informs if errata should be enabled at all. 20 * 21 * If this constant is set to 0, all the Errata bug fixes will be automatically disabled. 22 */ 23 #define NRF_USBD_COMMON_ERRATA_ENABLE 1 24 #endif 25 26 /* Errata: ISO double buffering not functional. **/ nrf_usbd_common_errata_166(void)27static inline bool nrf_usbd_common_errata_166(void) 28 { 29 return NRF_USBD_COMMON_ERRATA_ENABLE && nrf52_errata_166(); 30 } 31 32 /* Errata: USBD might not reach its active state. **/ nrf_usbd_common_errata_171(void)33static inline bool nrf_usbd_common_errata_171(void) 34 { 35 return NRF_USBD_COMMON_ERRATA_ENABLE && nrf52_errata_171(); 36 } 37 38 /* Errata: USB cannot be enabled. **/ nrf_usbd_common_errata_187(void)39static inline bool nrf_usbd_common_errata_187(void) 40 { 41 return NRF_USBD_COMMON_ERRATA_ENABLE && nrf52_errata_187(); 42 } 43 44 /* Errata: USBD cannot receive tasks during DMA. **/ nrf_usbd_common_errata_199(void)45static inline bool nrf_usbd_common_errata_199(void) 46 { 47 return NRF_USBD_COMMON_ERRATA_ENABLE && nrf52_errata_199(); 48 } 49 50 /* Errata: Device remains in SUSPEND too long. */ nrf_usbd_common_errata_211(void)51static inline bool nrf_usbd_common_errata_211(void) 52 { 53 return NRF_USBD_COMMON_ERRATA_ENABLE && nrf52_errata_211(); 54 } 55 56 /* Errata: Unexpected behavior after reset. **/ nrf_usbd_common_errata_223(void)57static inline bool nrf_usbd_common_errata_223(void) 58 { 59 return NRF_USBD_COMMON_ERRATA_ENABLE && nrf52_errata_223(); 60 } 61 62 #endif /* NRF_USBD_COMMON_ERRATA_H__ */ 63 64 /** @endcond */ 65