1 /* SPDX-License-Identifier: BSD-3-Clause
2 * Copyright(c) 2020 Intel Corporation
8 /* GUID definition for device class netUIO */
9 DEFINE_GUID(GUID_DEVCLASS_NETUIO, 0x78912bc1, 0xcb8e, 0x4b28,
10 0xa3, 0x29, 0xf3, 0x22, 0xeb, 0xad, 0xbe, 0x0f);
12 /* GUID definition for the netuio device interface */
13 DEFINE_GUID(GUID_DEVINTERFACE_NETUIO, 0x08336f60, 0x0679, 0x4c6c,
14 0x85, 0xd2, 0xae, 0x7c, 0xed, 0x65, 0xff, 0xf7);
16 /* IOCTL code definitions */
17 #define IOCTL_NETUIO_MAP_HW_INTO_USERSPACE \
18 CTL_CODE(FILE_DEVICE_NETWORK, 51, METHOD_BUFFERED, \
19 FILE_READ_ACCESS | FILE_WRITE_ACCESS)
21 #define MAX_DEVICENAME_SZ 255
26 UINT64 size; /* memory region size */
27 LARGE_INTEGER phys_addr; /* physical address of the memory region */
28 PVOID virt_addr; /* virtual address of the memory region */
29 PVOID user_mapped_virt_addr; /* virtual address of the region mapped */
30 /* into user process context */
36 struct mem_region hw[PCI_MAX_BAR];
41 * Get device resource information by sending ioctl to netuio driver
43 * This function is private to EAL.
46 * HDEVINFO handle to device information set
47 * @param dev_info_data
48 * SP_DEVINFO_DATA structure holding information about this enumerated device
50 * PCI device context for this device
53 * - negative on error.
56 get_netuio_device_info(HDEVINFO dev_info, PSP_DEVINFO_DATA dev_info_data,
57 struct rte_pci_device *dev);
59 #endif /* _PCI_NETUIO_H_ */