1*d30ea906Sjfb8856606 /* SPDX-License-Identifier: BSD-3-Clause
2*d30ea906Sjfb8856606 * Copyright(c) 2016 Cavium, Inc
32bfe3f2eSlogwang */
42bfe3f2eSlogwang
52bfe3f2eSlogwang #ifndef __SKELETON_EVENTDEV_H__
62bfe3f2eSlogwang #define __SKELETON_EVENTDEV_H__
72bfe3f2eSlogwang
82bfe3f2eSlogwang #include <rte_eventdev_pmd_pci.h>
92bfe3f2eSlogwang #include <rte_eventdev_pmd_vdev.h>
102bfe3f2eSlogwang
112bfe3f2eSlogwang #ifdef RTE_LIBRTE_PMD_SKELETON_EVENTDEV_DEBUG
122bfe3f2eSlogwang #define PMD_DRV_LOG(level, fmt, args...) \
132bfe3f2eSlogwang RTE_LOG(level, PMD, "%s(): " fmt "\n", __func__, ## args)
142bfe3f2eSlogwang #define PMD_DRV_FUNC_TRACE() PMD_DRV_LOG(DEBUG, ">>")
152bfe3f2eSlogwang #else
162bfe3f2eSlogwang #define PMD_DRV_LOG(level, fmt, args...) do { } while (0)
172bfe3f2eSlogwang #define PMD_DRV_FUNC_TRACE() do { } while (0)
182bfe3f2eSlogwang #endif
192bfe3f2eSlogwang
202bfe3f2eSlogwang #define PMD_DRV_ERR(fmt, args...) \
212bfe3f2eSlogwang RTE_LOG(ERR, PMD, "%s(): " fmt "\n", __func__, ## args)
222bfe3f2eSlogwang
232bfe3f2eSlogwang struct skeleton_eventdev {
242bfe3f2eSlogwang uintptr_t reg_base;
252bfe3f2eSlogwang uint16_t device_id;
262bfe3f2eSlogwang uint16_t vendor_id;
272bfe3f2eSlogwang uint16_t subsystem_device_id;
282bfe3f2eSlogwang uint16_t subsystem_vendor_id;
292bfe3f2eSlogwang } __rte_cache_aligned;
302bfe3f2eSlogwang
312bfe3f2eSlogwang struct skeleton_port {
322bfe3f2eSlogwang uint8_t port_id;
332bfe3f2eSlogwang } __rte_cache_aligned;
342bfe3f2eSlogwang
352bfe3f2eSlogwang static inline struct skeleton_eventdev *
skeleton_pmd_priv(const struct rte_eventdev * eventdev)362bfe3f2eSlogwang skeleton_pmd_priv(const struct rte_eventdev *eventdev)
372bfe3f2eSlogwang {
382bfe3f2eSlogwang return eventdev->data->dev_private;
392bfe3f2eSlogwang }
402bfe3f2eSlogwang
412bfe3f2eSlogwang #endif /* __SKELETON_EVENTDEV_H__ */
42