Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6
[pandora-kernel.git] / arch / arm / plat-orion / include / plat / pcie.h
1 /*
2  * arch/arm/plat-orion/include/plat/pcie.h
3  *
4  * Marvell Orion SoC PCIe handling.
5  *
6  * This file is licensed under the terms of the GNU General Public
7  * License version 2.  This program is licensed "as is" without any
8  * warranty of any kind, whether express or implied.
9  */
10
11 #ifndef __PLAT_PCIE_H
12 #define __PLAT_PCIE_H
13
14 struct pci_bus;
15
16 u32 orion_pcie_dev_id(void __iomem *base);
17 u32 orion_pcie_rev(void __iomem *base);
18 int orion_pcie_link_up(void __iomem *base);
19 int orion_pcie_x4_mode(void __iomem *base);
20 int orion_pcie_get_local_bus_nr(void __iomem *base);
21 void orion_pcie_set_local_bus_nr(void __iomem *base, int nr);
22 void orion_pcie_reset(void __iomem *base);
23 void orion_pcie_setup(void __iomem *base,
24                       struct mbus_dram_target_info *dram);
25 int orion_pcie_rd_conf(void __iomem *base, struct pci_bus *bus,
26                        u32 devfn, int where, int size, u32 *val);
27 int orion_pcie_rd_conf_tlp(void __iomem *base, struct pci_bus *bus,
28                            u32 devfn, int where, int size, u32 *val);
29 int orion_pcie_rd_conf_wa(void __iomem *wa_base, struct pci_bus *bus,
30                           u32 devfn, int where, int size, u32 *val);
31 int orion_pcie_wr_conf(void __iomem *base, struct pci_bus *bus,
32                        u32 devfn, int where, int size, u32 val);
33
34
35 #endif