spear600_evb.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. /*
  2. * arch/arm/mach-spear6xx/spear600_evb.c
  3. *
  4. * SPEAr600 evaluation board source file
  5. *
  6. * Copyright (C) 2009 ST Microelectronics
  7. * Viresh Kumar<viresh.kumar@st.com>
  8. *
  9. * This file is licensed under the terms of the GNU General Public
  10. * License version 2. This program is licensed "as is" without any
  11. * warranty of any kind, whether express or implied.
  12. */
  13. #include <asm/mach/arch.h>
  14. #include <asm/mach-types.h>
  15. #include <mach/generic.h>
  16. #include <mach/hardware.h>
  17. static struct amba_device *amba_devs[] __initdata = {
  18. &gpio_device[0],
  19. &gpio_device[1],
  20. &gpio_device[2],
  21. &uart_device[0],
  22. &uart_device[1],
  23. };
  24. static struct platform_device *plat_devs[] __initdata = {
  25. };
  26. static void __init spear600_evb_init(void)
  27. {
  28. unsigned int i;
  29. /* call spear600 machine init function */
  30. spear600_init();
  31. /* Add Platform Devices */
  32. platform_add_devices(plat_devs, ARRAY_SIZE(plat_devs));
  33. /* Add Amba Devices */
  34. for (i = 0; i < ARRAY_SIZE(amba_devs); i++)
  35. amba_device_register(amba_devs[i], &iomem_resource);
  36. }
  37. MACHINE_START(SPEAR600, "ST-SPEAR600-EVB")
  38. .boot_params = 0x00000100,
  39. .map_io = spear6xx_map_io,
  40. .init_irq = spear6xx_init_irq,
  41. .timer = &spear6xx_timer,
  42. .init_machine = spear600_evb_init,
  43. MACHINE_END