1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2018 Gaƫtan Rivet
5 #include "rte_ethdev.h"
6 #include "ethdev_private.h"
9 eth_dev_to_id(const struct rte_eth_dev *dev)
12 return RTE_MAX_ETHPORTS;
13 return dev - rte_eth_devices;
17 eth_find_device(const struct rte_eth_dev *start, rte_eth_cmp_t cmp,
20 struct rte_eth_dev *edev;
23 /* Avoid Undefined Behaviour */
25 (start < &rte_eth_devices[0] ||
26 start > &rte_eth_devices[RTE_MAX_ETHPORTS]))
29 idx = eth_dev_to_id(start) + 1;
32 for (; idx < RTE_MAX_ETHPORTS; idx++) {
33 edev = &rte_eth_devices[idx];
34 if (cmp(edev, data) == 0)