| 162 | } |
| 163 | |
| 164 | static int |
| 165 | edma_array_init(void) |
| 166 | { |
| 167 | const struct rte_memzone *mz; |
| 168 | uint32_t sz; |
| 169 | |
| 170 | mz = rte_memzone_lookup(DMA_ADAPTER_ARRAY); |
| 171 | if (mz == NULL) { |
| 172 | sz = sizeof(struct event_dma_adapter *) * RTE_EVENT_DMA_ADAPTER_MAX_INSTANCE; |
| 173 | sz = RTE_ALIGN(sz, RTE_CACHE_LINE_SIZE); |
| 174 | |
| 175 | mz = rte_memzone_reserve_aligned(DMA_ADAPTER_ARRAY, sz, rte_socket_id(), 0, |
| 176 | RTE_CACHE_LINE_SIZE); |
| 177 | if (mz == NULL) { |
| 178 | RTE_EDEV_LOG_ERR("Failed to reserve memzone : %s, err = %d", |
| 179 | DMA_ADAPTER_ARRAY, rte_errno); |
| 180 | return -rte_errno; |
| 181 | } |
| 182 | } |
| 183 | |
| 184 | event_dma_adapter = mz->addr; |
| 185 | |
| 186 | return 0; |
| 187 | } |
| 188 | |
| 189 | static inline bool |
| 190 | edma_circular_buffer_batch_ready(struct dma_ops_circular_buffer *bufp) |
no test coverage detected