12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091 |
- #include "nrf_dfu_transport.h"
- #include "nrf_log.h"
- #define DFU_TRANS_SECTION_ITEM_GET(i) NRF_SECTION_ITEM_GET(dfu_trans, nrf_dfu_transport_t, (i))
- #define DFU_TRANS_SECTION_ITEM_COUNT NRF_SECTION_ITEM_COUNT(dfu_trans, nrf_dfu_transport_t)
- NRF_SECTION_DEF(dfu_trans, const nrf_dfu_transport_t);
- uint32_t nrf_dfu_transports_init(nrf_dfu_observer_t observer)
- {
- uint32_t const num_transports = DFU_TRANS_SECTION_ITEM_COUNT;
- uint32_t ret_val = NRF_SUCCESS;
- NRF_LOG_DEBUG("Initializing transports (found: %d)", num_transports);
- for (uint32_t i = 0; i < num_transports; i++)
- {
- nrf_dfu_transport_t * const trans = DFU_TRANS_SECTION_ITEM_GET(i);
- ret_val = trans->init_func(observer);
- if (ret_val != NRF_SUCCESS)
- {
- NRF_LOG_DEBUG("Failed to initialize transport %d, error %d", i, ret_val);
- break;
- }
- }
- return ret_val;
- }
- uint32_t nrf_dfu_transports_close(nrf_dfu_transport_t const * p_exception)
- {
- uint32_t const num_transports = DFU_TRANS_SECTION_ITEM_COUNT;
- uint32_t ret_val = NRF_SUCCESS;
- NRF_LOG_DEBUG("Shutting down transports (found: %d)", num_transports);
- for (uint32_t i = 0; i < num_transports; i++)
- {
- nrf_dfu_transport_t * const trans = DFU_TRANS_SECTION_ITEM_GET(i);
- ret_val = trans->close_func(p_exception);
- if (ret_val != NRF_SUCCESS)
- {
- NRF_LOG_DEBUG("Failed to shutdown transport %d, error %d", i, ret_val);
- break;
- }
- }
- return ret_val;
- }
|