mx25pdk.c 1.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. #include <linux/types.h>
  2. #include <linux/init.h>
  3. #include <linux/clk.h>
  4. #include <linux/irq.h>
  5. #include <linux/gpio.h>
  6. #include <linux/smsc911x.h>
  7. #include <linux/platform_device.h>
  8. #include <mach/hardware.h>
  9. #include <asm/mach-types.h>
  10. #include <asm/mach/arch.h>
  11. #include <asm/mach/time.h>
  12. #include <asm/memory.h>
  13. #include <asm/mach/map.h>
  14. #include <mach/common.h>
  15. #include <mach/imx-uart.h>
  16. #include <mach/mx25.h>
  17. #include <mach/mxc_nand.h>
  18. #include "devices.h"
  19. #include <mach/iomux-v3.h>
  20. static struct imxuart_platform_data uart_pdata = {
  21. .flags = IMXUART_HAVE_RTSCTS,
  22. };
  23. static void __init mx25pdk_init(void)
  24. {
  25. mxc_register_device(&mxc_uart_device0, &uart_pdata);
  26. mxc_register_device(&mxc_usbh2, NULL);
  27. }
  28. static void __init mx25pdk_timer_init(void)
  29. {
  30. mx25_clocks_init(26000000);
  31. }
  32. static struct sys_timer mx25pdk_timer = {
  33. .init = mx25pdk_timer_init,
  34. };
  35. MACHINE_START(MX25_3DS, "Freescale MX25PDK (3DS)")
  36. /* Maintainer: Freescale Semiconductor, Inc. */
  37. .phys_io = MX25_AIPS1_BASE_ADDR,
  38. .io_pg_offst = ((MX25_AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc,
  39. .boot_params = PHYS_OFFSET + 0x100,
  40. .map_io = mx25_map_io,
  41. .init_irq = mx25_init_irq,
  42. .init_machine = mx25pdk_init,
  43. .timer = &mx25pdk_timer,
  44. MACHINE_END