Linux v2.6.15-rc6
[pohmelfs.git] / include / asm-arm / arch-iop3xx / hardware.h
blob3b138171d086adaf30ab1e17ef0a2a4930ee53b5
1 /*
2 * linux/include/asm-arm/arch-iop3xx/hardware.h
3 */
4 #ifndef __ASM_ARCH_HARDWARE_H
5 #define __ASM_ARCH_HARDWARE_H
7 #include <asm/types.h>
9 /*
10 * Note about PCI IO space mappings
12 * To make IO space accesses efficient, we store virtual addresses in
13 * the IO resources.
15 * The PCI IO space is located at virtual 0xfe000000 from physical
16 * 0x90000000. The PCI BARs must be programmed with physical addresses,
17 * but when we read them, we convert them to virtual addresses. See
18 * arch/arm/mach-iop3xx/iop3xx-pci.c
21 #define pcibios_assign_all_busses() 1
25 * The min PCI I/O and MEM space are dependent on what specific
26 * chipset/platform we are running on, so instead of hardcoding with
27 * #ifdefs, we just fill these in the platform level PCI init code.
29 #ifndef __ASSEMBLY__
30 extern unsigned long iop3xx_pcibios_min_io;
31 extern unsigned long iop3xx_pcibios_min_mem;
33 extern unsigned int processor_id;
34 #endif
37 * We just set these to zero since they are really bogus anyways
39 #define PCIBIOS_MIN_IO (iop3xx_pcibios_min_io)
40 #define PCIBIOS_MIN_MEM (iop3xx_pcibios_min_mem)
43 * Generic chipset bits
46 #include "iop321.h"
47 #include "iop331.h"
50 * Board specific bits
52 #include "iq80321.h"
53 #include "iq31244.h"
54 #include "iq80331.h"
55 #include "iq80332.h"
57 #endif /* _ASM_ARCH_HARDWARE_H */