setup.c 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738
  1. /*
  2. * arch/arm/plat-iop/setup.c
  3. *
  4. * Author: Nicolas Pitre <nico@cam.org>
  5. * Copyright (C) 2001 MontaVista Software, Inc.
  6. * Copyright (C) 2004 Intel Corporation.
  7. *
  8. * This program is free software; you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License version 2 as
  10. * published by the Free Software Foundation.
  11. */
  12. #include <linux/mm.h>
  13. #include <linux/init.h>
  14. #include <asm/mach/map.h>
  15. #include <asm/hardware/iop3xx.h>
  16. /*
  17. * Standard IO mapping for all IOP3xx based systems
  18. */
  19. static struct map_desc iop3xx_std_desc[] __initdata = {
  20. { /* mem mapped registers */
  21. .virtual = IOP3XX_PERIPHERAL_VIRT_BASE,
  22. .pfn = __phys_to_pfn(IOP3XX_PERIPHERAL_PHYS_BASE),
  23. .length = IOP3XX_PERIPHERAL_SIZE,
  24. .type = MT_DEVICE,
  25. }, { /* PCI IO space */
  26. .virtual = IOP3XX_PCI_LOWER_IO_VA,
  27. .pfn = __phys_to_pfn(IOP3XX_PCI_LOWER_IO_PA),
  28. .length = IOP3XX_PCI_IO_WINDOW_SIZE,
  29. .type = MT_DEVICE,
  30. },
  31. };
  32. void __init iop3xx_map_io(void)
  33. {
  34. iotable_init(iop3xx_std_desc, ARRAY_SIZE(iop3xx_std_desc));
  35. }