1*f94f8e62SAndrew Turner /* 2*f94f8e62SAndrew Turner * Copyright (c) 2015 Ruslan Bukin <br@bsdpad.com> 3*f94f8e62SAndrew Turner * Copyright (c) 2015 The FreeBSD Foundation 4*f94f8e62SAndrew Turner * All rights reserved. 5*f94f8e62SAndrew Turner * 6*f94f8e62SAndrew Turner * This software was developed by Semihalf. 7*f94f8e62SAndrew Turner * 8*f94f8e62SAndrew Turner * Redistribution and use in source and binary forms, with or without 9*f94f8e62SAndrew Turner * modification, are permitted provided that the following conditions 10*f94f8e62SAndrew Turner * are met: 11*f94f8e62SAndrew Turner * 1. Redistributions of source code must retain the above copyright 12*f94f8e62SAndrew Turner * notice, this list of conditions and the following disclaimer. 13*f94f8e62SAndrew Turner * 2. Redistributions in binary form must reproduce the above copyright 14*f94f8e62SAndrew Turner * notice, this list of conditions and the following disclaimer in the 15*f94f8e62SAndrew Turner * documentation and/or other materials provided with the distribution. 16*f94f8e62SAndrew Turner * 17*f94f8e62SAndrew Turner * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 18*f94f8e62SAndrew Turner * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 19*f94f8e62SAndrew Turner * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 20*f94f8e62SAndrew Turner * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 21*f94f8e62SAndrew Turner * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 22*f94f8e62SAndrew Turner * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 23*f94f8e62SAndrew Turner * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 24*f94f8e62SAndrew Turner * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 25*f94f8e62SAndrew Turner * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 26*f94f8e62SAndrew Turner * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 27*f94f8e62SAndrew Turner * SUCH DAMAGE. 28*f94f8e62SAndrew Turner * 29*f94f8e62SAndrew Turner * 30*f94f8e62SAndrew Turner * $FreeBSD$ 31*f94f8e62SAndrew Turner * 32*f94f8e62SAndrew Turner */ 33*f94f8e62SAndrew Turner 34*f94f8e62SAndrew Turner #ifndef __PCI_HOST_GENERIC_FDT_H_ 35*f94f8e62SAndrew Turner #define __PCI_HOST_GENERIC_FDT_H_ 36*f94f8e62SAndrew Turner 37*f94f8e62SAndrew Turner struct generic_pcie_fdt_softc { 38*f94f8e62SAndrew Turner struct generic_pcie_core_softc base; 39*f94f8e62SAndrew Turner struct ofw_bus_iinfo pci_iinfo; 40*f94f8e62SAndrew Turner }; 41*f94f8e62SAndrew Turner 42*f94f8e62SAndrew Turner DECLARE_CLASS(generic_pcie_fdt_driver); 43*f94f8e62SAndrew Turner 44*f94f8e62SAndrew Turner struct resource *pci_host_generic_alloc_resource(device_t, 45*f94f8e62SAndrew Turner device_t, int, int *, rman_res_t, rman_res_t, rman_res_t, u_int); 46*f94f8e62SAndrew Turner int pci_host_generic_attach(device_t); 47*f94f8e62SAndrew Turner int generic_pcie_get_id(device_t, device_t, enum pci_id_type, uintptr_t *); 48*f94f8e62SAndrew Turner 49*f94f8e62SAndrew Turner #endif /* __PCI_HOST_GENERIC_FDT_H_ */ 50