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 Rosenfeldpci_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