diff options
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/mips/au1000/common/setup.c | 19 |
1 files changed, 11 insertions, 8 deletions
diff --git a/arch/mips/au1000/common/setup.c b/arch/mips/au1000/common/setup.c index 919172db560c..13fe187f35d6 100644 --- a/arch/mips/au1000/common/setup.c +++ b/arch/mips/au1000/common/setup.c | |||
| @@ -141,17 +141,20 @@ void __init plat_mem_setup(void) | |||
| 141 | /* This routine should be valid for all Au1x based boards */ | 141 | /* This routine should be valid for all Au1x based boards */ |
| 142 | phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size) | 142 | phys_t __fixup_bigphys_addr(phys_t phys_addr, phys_t size) |
| 143 | { | 143 | { |
| 144 | u32 start, end; | ||
| 145 | |||
| 146 | /* Don't fixup 36 bit addresses */ | 144 | /* Don't fixup 36 bit addresses */ |
| 147 | if ((phys_addr >> 32) != 0) return phys_addr; | 145 | if ((phys_addr >> 32) != 0) |
| 146 | return phys_addr; | ||
| 148 | 147 | ||
| 149 | #ifdef CONFIG_PCI | 148 | #ifdef CONFIG_PCI |
| 150 | start = (u32)Au1500_PCI_MEM_START; | 149 | { |
| 151 | end = (u32)Au1500_PCI_MEM_END; | 150 | u32 start, end; |
| 152 | /* check for pci memory window */ | 151 | |
| 153 | if ((phys_addr >= start) && ((phys_addr + size) < end)) { | 152 | start = (u32)Au1500_PCI_MEM_START; |
| 154 | return (phys_t)((phys_addr - start) + Au1500_PCI_MEM_START); | 153 | end = (u32)Au1500_PCI_MEM_END; |
| 154 | /* check for pci memory window */ | ||
| 155 | if ((phys_addr >= start) && ((phys_addr + size) < end)) | ||
| 156 | return (phys_t) | ||
| 157 | ((phys_addr - start) + Au1500_PCI_MEM_START); | ||
| 155 | } | 158 | } |
| 156 | #endif | 159 | #endif |
| 157 | 160 | ||
