/* * SH7786 PCI-Express controller definitions. * * Copyright (C) 2008, 2009 Renesas Technology Corp. * All rights reserved. * * This file is subject to the terms and conditions of the GNU General Public * License. See the file "COPYING" in the main directory of this archive * for more details. */ #ifndef __PCI_SH7786_H #define __PCI_SH7786_H /* PCIe bus-0(x4) on SH7786 */ // Rev1.171 #define SH4A_PCIE_SPW_BASE 0xFE000000 /* spw config address for controller 0 */ #define SH4A_PCIE_SPW_BASE1 0xFE200000 /* spw config address for controller 1 (Rev1.14)*/ #define SH4A_PCIE_SPW_BASE2 0xFCC00000 /* spw config address for controller 2 (Rev1.171)*/ #define SH4A_PCIE_SPW_BASE_LEN 0x00080000 #define SH4A_PCI_CNFG_BASE 0xFE040000 /* pci config address for controller 0 */ #define SH4A_PCI_CNFG_BASE1 0xFE240000 /* pci config address for controller 1 (Rev1.14)*/ #define SH4A_PCI_CNFG_BASE2 0xFCC40000 /* pci config address for controller 2 (Rev1.171)*/ #define SH4A_PCI_CNFG_BASE_LEN 0x00040000 #define SH4A_PCIPIO_ADDR_OFFSET 0x000001c0 /* offset to pci config_address */ #define SH4A_PCIPIO_DATA_OFFSET 0x00000220 /* offset to pci config_data */ /* * for PEX8111(Max Payload Size=128B,PCIIO_SIZE=64K), * for other(Max Payload Size=4096B,PCIIO_SIZE=8M) */ /* PCI0: PCI memory target transfer 32-bit address translation value(Rev1.11T)*/ #define SH4A_PCIBMSTR_TRANSLATION 0x20000000 /* SPVCR0 */ #define SH4A_PCIEVCR0 (0x000000) /* R - 0x0000 0000 32 */ #define BITS_TOP_MB (24) #define MASK_TOP_MB (0xff<reg_base + reg); } static inline unsigned long pci_read_reg(struct pci_channel *chan, unsigned long reg) { return __raw_readl(chan->reg_base + reg); } #endif /* __PCI_SH7786_H */