shannon.c
上传用户:lgb322
上传日期:2013-02-24
资源大小:30529k
文件大小:1k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /*
  2.  * linux/arch/arm/mach-sa1100/shannon.c
  3.  */
  4. #include <linux/init.h>
  5. #include <linux/kernel.h>
  6. #include <linux/tty.h>
  7. #include <asm/hardware.h>
  8. #include <asm/setup.h>
  9. #include <asm/irq.h>
  10. #include <asm/mach/arch.h>
  11. #include <asm/mach/map.h>
  12. #include <asm/mach/serial_sa1100.h>
  13. #include "generic.h"
  14. static struct map_desc shannon_io_desc[] __initdata = {
  15.  /* virtual     physical    length      domain     r  w  c  b */
  16.   { 0xe8000000, 0x00000000, 0x00400000, DOMAIN_IO, 0, 1, 0, 0 }, /* main flash memory */
  17.   LAST_DESC
  18. };
  19. static void __init shannon_map_io(void)
  20. {
  21. sa1100_map_io();
  22. iotable_init(shannon_io_desc);
  23. sa1100_register_uart(0, 3);
  24. sa1100_register_uart(1, 1);
  25. Ser1SDCR0 |= SDCR0_SUS;
  26. GAFR |= (GPIO_UART_TXD | GPIO_UART_RXD);
  27. GPDR |= GPIO_UART_TXD;
  28. GPDR &= ~GPIO_UART_RXD;
  29. PPAR |= PPAR_UPR;
  30. set_GPIO_IRQ_edge(SHANNON_GPIO_IRQ_CODEC);
  31. }
  32. MACHINE_START(SHANNON, "Shannon (AKA: Tuxscreen)")
  33. BOOT_MEM(0xc0000000, 0x80000000, 0xf8000000)
  34. BOOT_PARAMS(0xc0000100)
  35. MAPIO(shannon_map_io)
  36. INITIRQ(sa1100_init_irq)
  37. MACHINE_END