From dd75071f4e094618fcb5ed182fbe3a47641d9739 Mon Sep 17 00:00:00 2001 From: florian Date: Thu, 29 Mar 2007 22:21:43 +0000 Subject: Cleanup system code and use definitions git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6760 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../adm5120-2.6/files/arch/mips/pci/ops-adm5120.c | 10 ++++--- .../adm5120-2.6/files/arch/mips/pci/pci-adm5120.c | 31 ++++++++++++---------- 2 files changed, 24 insertions(+), 17 deletions(-) (limited to 'target/linux/adm5120-2.6/files/arch/mips/pci') diff --git a/target/linux/adm5120-2.6/files/arch/mips/pci/ops-adm5120.c b/target/linux/adm5120-2.6/files/arch/mips/pci/ops-adm5120.c index 80b8531ea..91dae8999 100644 --- a/target/linux/adm5120-2.6/files/arch/mips/pci/ops-adm5120.c +++ b/target/linux/adm5120-2.6/files/arch/mips/pci/ops-adm5120.c @@ -1,6 +1,8 @@ /* * Copyright (C) ADMtek Incorporated. * Copyright (C) 2005 Jeroen Vreeken (pe1rxq@amsat.org) + * Copyright (C) 2007 Gabor Juhos + * Copyright (C) 2007 OpenWrt.org */ #include @@ -9,11 +11,13 @@ #include #include -volatile u32* pci_config_address_reg = (volatile u32*)KSEG1ADDR(0x115ffff0); -volatile u32* pci_config_data_reg = (volatile u32*)KSEG1ADDR(0x115ffff8); +#include + +volatile u32* pci_config_address_reg = (volatile u32*)KSEG1ADDR(ADM5120_PCICFG_ADDR); +volatile u32* pci_config_data_reg = (volatile u32*)KSEG1ADDR(ADM5120_PCICFG_DATA); #define PCI_ENABLE 0x80000000 - + static int pci_config_read(struct pci_bus *bus, unsigned int devfn, int where, int size, uint32_t *val) { diff --git a/target/linux/adm5120-2.6/files/arch/mips/pci/pci-adm5120.c b/target/linux/adm5120-2.6/files/arch/mips/pci/pci-adm5120.c index bf46cc142..78de001c5 100644 --- a/target/linux/adm5120-2.6/files/arch/mips/pci/pci-adm5120.c +++ b/target/linux/adm5120-2.6/files/arch/mips/pci/pci-adm5120.c @@ -1,6 +1,8 @@ /* * Copyright (C) ADMtek Incorporated. * Copyright (C) 2005 Jeroen Vreeken (pe1rxq@amsat.org) + * Copyright (C) 2007 Gabor Juhos + * Copyright (C) 2007 OpenWrt.org */ #include @@ -9,10 +11,10 @@ #include #include -extern struct pci_ops adm5120_pci_ops; +#include +#include -#define ADM5120_CODE 0x12000000 -#define ADM5120_CODE_PQFP 0x20000000 +extern struct pci_ops adm5120_pci_ops; #define PCI_CMM_IOACC_EN 0x1 #define PCI_CMM_MEMACC_EN 0x2 @@ -24,16 +26,16 @@ extern struct pci_ops adm5120_pci_ops; struct resource pci_io_resource = { - .name = "PCI IO space", - .start = 0x11500000, - .end = 0x115ffff0-1, + .name = "ADM5120 PCI I/O", + .start = ADM5120_PCIIO_BASE, + .end = ADM5120_PCICFG_ADDR-1, .flags = IORESOURCE_IO }; struct resource pci_mem_resource = { - .name = "PCI memory space", - .start = 0x11400000, - .end = 0x11500000, + .name = "ADM5120 PCI MEM", + .start = ADM5120_PCIMEM_BASE, + .end = ADM5120_PCIIO_BASE-1, .flags = IORESOURCE_MEM }; @@ -71,12 +73,13 @@ int pcibios_plat_dev_init(struct pci_dev *dev) static int __init adm5120_pci_setup(void) { + int pci_bios; - if ((*(volatile u32 *)(KSEG1ADDR(ADM5120_CODE))) & ADM5120_CODE_PQFP) { - printk("System has no PCI BIOS (ADM5120 PQFP)\n"); + pci_bios = adm5120_has_pci(); + + printk("adm5120: system has %sPCI BIOS\n", pci_bios ? "" : "no "); + if (pci_bios == 0) return 1; - } - printk("System has PCI BIOS (ADM5120 BGA)\n"); /* Avoid ISA compat ranges. */ PCIBIOS_MIN_IO = 0x00000000; @@ -84,7 +87,7 @@ static int __init adm5120_pci_setup(void) /* Set I/O resource limits. */ ioport_resource.end = 0x1fffffff; - iomem_resource.end = 0xffffffff; + iomem_resource.end = 0xffffffff; register_pci_controller(&adm5120_controller); return 0; -- cgit v1.2.3