14 #include <linux/pci.h>
15 #include <linux/types.h>
16 #include <linux/errno.h>
19 #include <asm/addrspace.h>
20 #include <asm/sizes.h>
22 static int __init __area_sdram_check(
struct pci_channel *
chan,
29 if (((word >> area) & 1) == 0) {
30 printk(
"PCI: Area %d is not configured for SDRAM. BCR1=0x%lx\n",
38 if (((word >> (area << 1)) & 0x3) != 0x3) {
39 printk(
"PCI: Area %d is not 32 bit SDRAM. BCR2=0x%lx\n",
48 static struct resource sh7751_pci_resources[] = {
62 static struct pci_channel sh7751_pci_controller = {
64 .resources = sh7751_pci_resources,
65 .nr_resources =
ARRAY_SIZE(sh7751_pci_resources),
66 .mem_offset = 0x00000000,
67 .io_offset = 0x00000000,
78 static int __init sh7751_pci_init(
void)
80 struct pci_channel *chan = &sh7751_pci_controller;
86 chan->reg_base = 0xfe200000;
92 pr_debug(
"PCI: This is not an SH7751(R) (%x)\n",
id);
122 word = sh7751_pci_map.
window0.size - 1;
125 word = P2SEGADDR(sh7751_pci_map.
window0.base);
133 pr_debug(
"PCI: Setting upper bits of Memory window to 0x%x\n", word);
139 pr_debug(
"PCI: Setting upper bits of IO window to 0x%x\n", word);
145 switch (sh7751_pci_map.
window0.base) {