xref: /illumos-gate/usr/src/compat/bhyve/dev/pci/pcivar.h (revision d0b3c59b)
1eb9a1df2SHans Rosenfeld /*
2eb9a1df2SHans Rosenfeld  * This file and its contents are supplied under the terms of the
3eb9a1df2SHans Rosenfeld  * Common Development and Distribution License ("CDDL"), version 1.0.
4eb9a1df2SHans Rosenfeld  * You may only use this file in accordance with the terms of version
5eb9a1df2SHans Rosenfeld  * 1.0 of the CDDL.
6eb9a1df2SHans Rosenfeld  *
7eb9a1df2SHans Rosenfeld  * A full copy of the text of the CDDL should have accompanied this
8eb9a1df2SHans Rosenfeld  * source.  A copy of the CDDL is also available via the Internet at
9eb9a1df2SHans Rosenfeld  * http://www.illumos.org/license/CDDL.
10eb9a1df2SHans Rosenfeld  */
11eb9a1df2SHans Rosenfeld 
12eb9a1df2SHans Rosenfeld /*
13eb9a1df2SHans Rosenfeld  * Copyright 2018 Joyent, Inc.
14eb9a1df2SHans Rosenfeld  */
15eb9a1df2SHans Rosenfeld 
16eb9a1df2SHans Rosenfeld #ifndef _COMPAT_FREEBSD_DEV_PCI_PCIVAR_H
17eb9a1df2SHans Rosenfeld #define	_COMPAT_FREEBSD_DEV_PCI_PCIVAR_H
18eb9a1df2SHans Rosenfeld 
19eb9a1df2SHans Rosenfeld #include <sys/types.h>
20eb9a1df2SHans Rosenfeld #include <sys/conf.h>
21eb9a1df2SHans Rosenfeld #include <sys/ddi.h>
22eb9a1df2SHans Rosenfeld #include <sys/sunddi.h>
23eb9a1df2SHans Rosenfeld #include <sys/pcie.h>
24eb9a1df2SHans Rosenfeld #include <sys/pcie_impl.h>
25eb9a1df2SHans Rosenfeld 
26eb9a1df2SHans Rosenfeld static inline pcie_req_id_t
pci_get_bdf(device_t dev)27eb9a1df2SHans Rosenfeld pci_get_bdf(device_t dev)
28eb9a1df2SHans Rosenfeld {
29eb9a1df2SHans Rosenfeld 	pcie_req_id_t bdf;
30eb9a1df2SHans Rosenfeld 
31eb9a1df2SHans Rosenfeld 	VERIFY(pcie_get_bdf_from_dip(dev, &bdf) == DDI_SUCCESS);
32eb9a1df2SHans Rosenfeld 
33eb9a1df2SHans Rosenfeld 	return (bdf);
34eb9a1df2SHans Rosenfeld }
35eb9a1df2SHans Rosenfeld 
36eb9a1df2SHans Rosenfeld #define	pci_get_rid(dev)	(pci_get_bdf(dev))
37eb9a1df2SHans Rosenfeld 
38eb9a1df2SHans Rosenfeld #endif /* _COMPAT_FREEBSD_DEV_PCI_PCIVAR_H */
39