Back to home page

OSCL-LXR

 
 

    


0001 /*
0002  * arch/arm/plat-orion/include/plat/pcie.h
0003  *
0004  * Marvell Orion SoC PCIe handling.
0005  *
0006  * This file is licensed under the terms of the GNU General Public
0007  * License version 2.  This program is licensed "as is" without any
0008  * warranty of any kind, whether express or implied.
0009  */
0010 
0011 #ifndef __PLAT_PCIE_H
0012 #define __PLAT_PCIE_H
0013 
0014 struct pci_bus;
0015 
0016 u32 orion_pcie_dev_id(void __iomem *base);
0017 u32 orion_pcie_rev(void __iomem *base);
0018 int orion_pcie_link_up(void __iomem *base);
0019 int orion_pcie_x4_mode(void __iomem *base);
0020 int orion_pcie_get_local_bus_nr(void __iomem *base);
0021 void orion_pcie_set_local_bus_nr(void __iomem *base, int nr);
0022 void orion_pcie_reset(void __iomem *base);
0023 void orion_pcie_setup(void __iomem *base);
0024 int orion_pcie_rd_conf(void __iomem *base, struct pci_bus *bus,
0025                u32 devfn, int where, int size, u32 *val);
0026 int orion_pcie_rd_conf_tlp(void __iomem *base, struct pci_bus *bus,
0027                u32 devfn, int where, int size, u32 *val);
0028 int orion_pcie_rd_conf_wa(void __iomem *wa_base, struct pci_bus *bus,
0029               u32 devfn, int where, int size, u32 *val);
0030 int orion_pcie_wr_conf(void __iomem *base, struct pci_bus *bus,
0031                u32 devfn, int where, int size, u32 val);
0032 
0033 
0034 #endif