nrfx_glue.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142
  1. /*
  2. * Copyright (c) 2018, Nordic Semiconductor ASA
  3. *
  4. * SPDX-License-Identifier: Apache-2.0
  5. */
  6. #include <nrfx.h>
  7. #include <kernel.h>
  8. void nrfx_isr(const void *irq_handler)
  9. {
  10. ((nrfx_irq_handler_t)irq_handler)();
  11. }
  12. void nrfx_busy_wait(uint32_t usec_to_wait)
  13. {
  14. k_busy_wait(usec_to_wait);
  15. }
  16. char const *nrfx_error_string_get(nrfx_err_t code)
  17. {
  18. #define NRFX_ERROR_STRING_CASE(code) case code: return #code
  19. switch (code) {
  20. NRFX_ERROR_STRING_CASE(NRFX_SUCCESS);
  21. NRFX_ERROR_STRING_CASE(NRFX_ERROR_INTERNAL);
  22. NRFX_ERROR_STRING_CASE(NRFX_ERROR_NO_MEM);
  23. NRFX_ERROR_STRING_CASE(NRFX_ERROR_NOT_SUPPORTED);
  24. NRFX_ERROR_STRING_CASE(NRFX_ERROR_INVALID_PARAM);
  25. NRFX_ERROR_STRING_CASE(NRFX_ERROR_INVALID_STATE);
  26. NRFX_ERROR_STRING_CASE(NRFX_ERROR_INVALID_LENGTH);
  27. NRFX_ERROR_STRING_CASE(NRFX_ERROR_TIMEOUT);
  28. NRFX_ERROR_STRING_CASE(NRFX_ERROR_FORBIDDEN);
  29. NRFX_ERROR_STRING_CASE(NRFX_ERROR_NULL);
  30. NRFX_ERROR_STRING_CASE(NRFX_ERROR_INVALID_ADDR);
  31. NRFX_ERROR_STRING_CASE(NRFX_ERROR_BUSY);
  32. NRFX_ERROR_STRING_CASE(NRFX_ERROR_ALREADY_INITIALIZED);
  33. NRFX_ERROR_STRING_CASE(NRFX_ERROR_DRV_TWI_ERR_OVERRUN);
  34. NRFX_ERROR_STRING_CASE(NRFX_ERROR_DRV_TWI_ERR_ANACK);
  35. NRFX_ERROR_STRING_CASE(NRFX_ERROR_DRV_TWI_ERR_DNACK);
  36. default: return "unknown";
  37. }
  38. }