hardware.h 1.3 KB

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