constants.h
上传用户:szlgq88
上传日期:2009-04-28
资源大小:48287k
文件大小:3k
源码类别:

嵌入式Linux

开发平台:

Unix_Linux

  1. /* include/asm-arm/arch-lh7a40x/constants.h
  2.  *
  3.  *  Copyright (C) 2004 Coastal Environmental Systems
  4.  *  Copyright (C) 2004 Logic Product Development
  5.  *
  6.  *  This program is free software; you can redistribute it and/or
  7.  *  modify it under the terms of the GNU General Public License
  8.  *  version 2 as published by the Free Software Foundation.
  9.  *
  10.  */
  11. #ifndef __ASM_ARCH_CONSTANTS_H
  12. #define __ASM_ARCH_CONSTANTS_H
  13. #include <linux/config.h>
  14. /* Addressing constants */
  15. /* SoC CPU IO addressing */
  16. #define IO_PHYS (0x80000000)
  17. #define IO_VIRT (0xf8000000)
  18. #define IO_SIZE (0x0000B000)
  19. #ifdef CONFIG_MACH_KEV7A400
  20. # define CPLD_PHYS (0x20000000)
  21. # define CPLD_VIRT (0xf2000000)
  22. # define CPLD_SIZE PAGE_SIZE
  23. #endif
  24. #if defined (CONFIG_MACH_LPD7A400) || defined (CONFIG_MACH_LPD7A404)
  25. # define IOBARRIER_PHYS 0xc0000000 /* Start of SDRAM */
  26. /*# define IOBARRIER_PHYS 0x00000000 */ /* Start of flash */
  27. # define IOBARRIER_VIRT 0xf0000000
  28. # define IOBARRIER_SIZE PAGE_SIZE
  29. # define CF_PHYS 0x60200000
  30. # define CF_VIRT 0xf6020000
  31. # define CF_SIZE (8*1024)
  32. /* The IO mappings for the LPD CPLD are, unfortunately, sparse.  */
  33. # define CPLDX_PHYS(x) (0x70000000 | ((x) << 20))
  34. # define CPLDX_VIRT(x) (0xf7000000 | ((x) << 16))
  35. # define CPLD00_PHYS CPLDX_PHYS (0x00) /* Wired LAN */
  36. # define CPLD00_VIRT CPLDX_VIRT (0x00)
  37. # define CPLD00_SIZE PAGE_SIZE
  38. # define CPLD02_PHYS CPLDX_PHYS (0x02)
  39. # define CPLD02_VIRT CPLDX_VIRT (0x02)
  40. # define CPLD02_SIZE PAGE_SIZE
  41. # define CPLD06_PHYS CPLDX_PHYS (0x06)
  42. # define CPLD06_VIRT CPLDX_VIRT (0x06)
  43. # define CPLD06_SIZE PAGE_SIZE
  44. # define CPLD08_PHYS CPLDX_PHYS (0x08)
  45. # define CPLD08_VIRT CPLDX_VIRT (0x08)
  46. # define CPLD08_SIZE PAGE_SIZE
  47. # define CPLD0C_PHYS CPLDX_PHYS (0x0c)
  48. # define CPLD0C_VIRT CPLDX_VIRT (0x0c)
  49. # define CPLD0C_SIZE PAGE_SIZE
  50. # define CPLD0E_PHYS CPLDX_PHYS (0x0e)
  51. # define CPLD0E_VIRT CPLDX_VIRT (0x0e)
  52. # define CPLD0E_SIZE PAGE_SIZE
  53. # define CPLD10_PHYS CPLDX_PHYS (0x10)
  54. # define CPLD10_VIRT CPLDX_VIRT (0x10)
  55. # define CPLD10_SIZE PAGE_SIZE
  56. # define CPLD12_PHYS CPLDX_PHYS (0x12)
  57. # define CPLD12_VIRT CPLDX_VIRT (0x12)
  58. # define CPLD12_SIZE PAGE_SIZE
  59. # define CPLD14_PHYS CPLDX_PHYS (0x14)
  60. # define CPLD14_VIRT CPLDX_VIRT (0x14)
  61. # define CPLD14_SIZE PAGE_SIZE
  62. # define CPLD16_PHYS CPLDX_PHYS (0x16)
  63. # define CPLD16_VIRT CPLDX_VIRT (0x16)
  64. # define CPLD16_SIZE PAGE_SIZE
  65. # define CPLD18_PHYS CPLDX_PHYS (0x18)
  66. # define CPLD18_VIRT CPLDX_VIRT (0x18)
  67. # define CPLD18_SIZE PAGE_SIZE
  68. # define CPLD1A_PHYS CPLDX_PHYS (0x1a)
  69. # define CPLD1A_VIRT CPLDX_VIRT (0x1a)
  70. # define CPLD1A_SIZE PAGE_SIZE
  71. #endif
  72. /* Timing constants */
  73. #define XTAL_IN 14745600 /* 14.7456 MHz crystal */
  74. #define PLL_CLOCK (XTAL_IN * 21) /* 309 MHz PLL clock */
  75. #define MAX_HCLK_KHZ 100000 /* HCLK max limit ~100MHz */
  76. #endif /* __ASM_ARCH_CONSTANTS_H */