coldfire.h 2.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394
  1. /****************************************************************************/
  2. /*
  3. * coldfire.h -- Motorola ColdFire CPU sepecific defines
  4. *
  5. * (C) Copyright 1999-2002, Greg Ungerer (gerg@snapgear.com)
  6. * (C) Copyright 2000, Lineo (www.lineo.com)
  7. */
  8. /****************************************************************************/
  9. #ifndef coldfire_h
  10. #define coldfire_h
  11. /****************************************************************************/
  12. #include <linux/config.h>
  13. /*
  14. * Define the processor support peripherals base address.
  15. * This is generally setup by the boards start up code.
  16. */
  17. #define MCF_MBAR 0x10000000
  18. #define MCF_MBAR2 0x80000000
  19. #if defined(CONFIG_M520x)
  20. #define MCF_IPSBAR 0xFC000000
  21. #else
  22. #define MCF_IPSBAR 0x40000000
  23. #endif
  24. #if defined(CONFIG_M523x) || defined(CONFIG_M527x) || defined(CONFIG_M528x) || \
  25. defined(CONFIG_M520x)
  26. #undef MCF_MBAR
  27. #define MCF_MBAR MCF_IPSBAR
  28. #endif
  29. /*
  30. * Define master clock frequency.
  31. */
  32. #if defined(CONFIG_CLOCK_11MHz)
  33. #define MCF_CLK 11289600
  34. #elif defined(CONFIG_CLOCK_16MHz)
  35. #define MCF_CLK 16000000
  36. #elif defined(CONFIG_CLOCK_20MHz)
  37. #define MCF_CLK 20000000
  38. #elif defined(CONFIG_CLOCK_24MHz)
  39. #define MCF_CLK 24000000
  40. #elif defined(CONFIG_CLOCK_25MHz)
  41. #define MCF_CLK 25000000
  42. #elif defined(CONFIG_CLOCK_33MHz)
  43. #define MCF_CLK 33000000
  44. #elif defined(CONFIG_CLOCK_40MHz)
  45. #define MCF_CLK 40000000
  46. #elif defined(CONFIG_CLOCK_45MHz)
  47. #define MCF_CLK 45000000
  48. #elif defined(CONFIG_CLOCK_48MHz)
  49. #define MCF_CLK 48000000
  50. #elif defined(CONFIG_CLOCK_50MHz)
  51. #define MCF_CLK 50000000
  52. #elif defined(CONFIG_CLOCK_54MHz)
  53. #define MCF_CLK 54000000
  54. #elif defined(CONFIG_CLOCK_60MHz)
  55. #define MCF_CLK 60000000
  56. #elif defined(CONFIG_CLOCK_62_5MHz)
  57. #define MCF_CLK 62500000
  58. #elif defined(CONFIG_CLOCK_64MHz)
  59. #define MCF_CLK 64000000
  60. #elif defined(CONFIG_CLOCK_66MHz)
  61. #define MCF_CLK 66000000
  62. #elif defined(CONFIG_CLOCK_70MHz)
  63. #define MCF_CLK 70000000
  64. #elif defined(CONFIG_CLOCK_100MHz)
  65. #define MCF_CLK 100000000
  66. #elif defined(CONFIG_CLOCK_140MHz)
  67. #define MCF_CLK 140000000
  68. #elif defined(CONFIG_CLOCK_150MHz)
  69. #define MCF_CLK 150000000
  70. #elif defined(CONFIG_CLOCK_166MHz)
  71. #define MCF_CLK 166000000
  72. #else
  73. #error "Don't know what your ColdFire CPU clock frequency is??"
  74. #endif
  75. /*
  76. * One some ColdFire family members the bus clock (used by internal
  77. * peripherals) is not the same as the CPU clock.
  78. */
  79. #if defined(CONFIG_M523x) || defined(CONFIG_M5249) || defined(CONFIG_M527x) || \
  80. defined(CONFIG_M520x)
  81. #define MCF_BUSCLK (MCF_CLK / 2)
  82. #else
  83. #define MCF_BUSCLK MCF_CLK
  84. #endif
  85. /****************************************************************************/
  86. #endif /* coldfire_h */