pxa-regs.h 3.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182
  1. /*
  2. * arch/arm/mach-pxa/include/mach/pxa-regs.h
  3. *
  4. * Author: Nicolas Pitre
  5. * Created: Jun 15, 2001
  6. * Copyright: MontaVista Software Inc.
  7. *
  8. * This program is free software; you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License version 2 as
  10. * published by the Free Software Foundation.
  11. */
  12. #ifndef __PXA_REGS_H
  13. #define __PXA_REGS_H
  14. #include <mach/hardware.h>
  15. /*
  16. * Real Time Clock
  17. */
  18. #define RCNR __REG(0x40900000) /* RTC Count Register */
  19. #define RTAR __REG(0x40900004) /* RTC Alarm Register */
  20. #define RTSR __REG(0x40900008) /* RTC Status Register */
  21. #define RTTR __REG(0x4090000C) /* RTC Timer Trim Register */
  22. #define PIAR __REG(0x40900038) /* Periodic Interrupt Alarm Register */
  23. #define RTSR_PICE (1 << 15) /* Periodic interrupt count enable */
  24. #define RTSR_PIALE (1 << 14) /* Periodic interrupt Alarm enable */
  25. #define RTSR_HZE (1 << 3) /* HZ interrupt enable */
  26. #define RTSR_ALE (1 << 2) /* RTC alarm interrupt enable */
  27. #define RTSR_HZ (1 << 1) /* HZ rising-edge detected */
  28. #define RTSR_AL (1 << 0) /* RTC alarm detected */
  29. /*
  30. * OS Timer & Match Registers
  31. */
  32. #define OSMR0 __REG(0x40A00000) /* */
  33. #define OSMR1 __REG(0x40A00004) /* */
  34. #define OSMR2 __REG(0x40A00008) /* */
  35. #define OSMR3 __REG(0x40A0000C) /* */
  36. #define OSMR4 __REG(0x40A00080) /* */
  37. #define OSCR __REG(0x40A00010) /* OS Timer Counter Register */
  38. #define OSCR4 __REG(0x40A00040) /* OS Timer Counter Register */
  39. #define OMCR4 __REG(0x40A000C0) /* */
  40. #define OSSR __REG(0x40A00014) /* OS Timer Status Register */
  41. #define OWER __REG(0x40A00018) /* OS Timer Watchdog Enable Register */
  42. #define OIER __REG(0x40A0001C) /* OS Timer Interrupt Enable Register */
  43. #define OSSR_M3 (1 << 3) /* Match status channel 3 */
  44. #define OSSR_M2 (1 << 2) /* Match status channel 2 */
  45. #define OSSR_M1 (1 << 1) /* Match status channel 1 */
  46. #define OSSR_M0 (1 << 0) /* Match status channel 0 */
  47. #define OWER_WME (1 << 0) /* Watchdog Match Enable */
  48. #define OIER_E3 (1 << 3) /* Interrupt enable channel 3 */
  49. #define OIER_E2 (1 << 2) /* Interrupt enable channel 2 */
  50. #define OIER_E1 (1 << 1) /* Interrupt enable channel 1 */
  51. #define OIER_E0 (1 << 0) /* Interrupt enable channel 0 */
  52. /*
  53. * Interrupt Controller
  54. */
  55. #define ICIP __REG(0x40D00000) /* Interrupt Controller IRQ Pending Register */
  56. #define ICMR __REG(0x40D00004) /* Interrupt Controller Mask Register */
  57. #define ICLR __REG(0x40D00008) /* Interrupt Controller Level Register */
  58. #define ICFP __REG(0x40D0000C) /* Interrupt Controller FIQ Pending Register */
  59. #define ICPR __REG(0x40D00010) /* Interrupt Controller Pending Register */
  60. #define ICCR __REG(0x40D00014) /* Interrupt Controller Control Register */
  61. #define ICIP2 __REG(0x40D0009C) /* Interrupt Controller IRQ Pending Register 2 */
  62. #define ICMR2 __REG(0x40D000A0) /* Interrupt Controller Mask Register 2 */
  63. #define ICLR2 __REG(0x40D000A4) /* Interrupt Controller Level Register 2 */
  64. #define ICFP2 __REG(0x40D000A8) /* Interrupt Controller FIQ Pending Register 2 */
  65. #define ICPR2 __REG(0x40D000AC) /* Interrupt Controller Pending Register 2 */
  66. #endif