timer.h 3.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. /*
  2. * General Purpose Timer Masks
  3. */
  4. #ifndef __BFIN_PERIPHERAL_TIMER__
  5. #define __BFIN_PERIPHERAL_TIMER__
  6. /* TIMER_ENABLE Masks */
  7. #define TIMEN0 0x0001 /* Enable Timer 0 */
  8. #define TIMEN1 0x0002 /* Enable Timer 1 */
  9. #define TIMEN2 0x0004 /* Enable Timer 2 */
  10. #define TIMEN3 0x0008 /* Enable Timer 3 */
  11. #define TIMEN4 0x0010 /* Enable Timer 4 */
  12. #define TIMEN5 0x0020 /* Enable Timer 5 */
  13. #define TIMEN6 0x0040 /* Enable Timer 6 */
  14. #define TIMEN7 0x0080 /* Enable Timer 7 */
  15. /* TIMER_DISABLE Masks */
  16. #define TIMDIS0 TIMEN0 /* Disable Timer 0 */
  17. #define TIMDIS1 TIMEN1 /* Disable Timer 1 */
  18. #define TIMDIS2 TIMEN2 /* Disable Timer 2 */
  19. #define TIMDIS3 TIMEN3 /* Disable Timer 3 */
  20. #define TIMDIS4 TIMEN4 /* Disable Timer 4 */
  21. #define TIMDIS5 TIMEN5 /* Disable Timer 5 */
  22. #define TIMDIS6 TIMEN6 /* Disable Timer 6 */
  23. #define TIMDIS7 TIMEN7 /* Disable Timer 7 */
  24. /* TIMER_STATUS Masks */
  25. #define TIMIL0 0x00000001 /* Timer 0 Interrupt */
  26. #define TIMIL1 0x00000002 /* Timer 1 Interrupt */
  27. #define TIMIL2 0x00000004 /* Timer 2 Interrupt */
  28. #define TIMIL3 0x00000008 /* Timer 3 Interrupt */
  29. #define TOVF_ERR0 0x00000010 /* Timer 0 Counter Overflow */
  30. #define TOVF_ERR1 0x00000020 /* Timer 1 Counter Overflow */
  31. #define TOVF_ERR2 0x00000040 /* Timer 2 Counter Overflow */
  32. #define TOVF_ERR3 0x00000080 /* Timer 3 Counter Overflow */
  33. #define TRUN0 0x00001000 /* Timer 0 Slave Enable Status */
  34. #define TRUN1 0x00002000 /* Timer 1 Slave Enable Status */
  35. #define TRUN2 0x00004000 /* Timer 2 Slave Enable Status */
  36. #define TRUN3 0x00008000 /* Timer 3 Slave Enable Status */
  37. #define TIMIL4 0x00010000 /* Timer 4 Interrupt */
  38. #define TIMIL5 0x00020000 /* Timer 5 Interrupt */
  39. #define TIMIL6 0x00040000 /* Timer 6 Interrupt */
  40. #define TIMIL7 0x00080000 /* Timer 7 Interrupt */
  41. #define TOVF_ERR4 0x00100000 /* Timer 4 Counter Overflow */
  42. #define TOVF_ERR5 0x00200000 /* Timer 5 Counter Overflow */
  43. #define TOVF_ERR6 0x00400000 /* Timer 6 Counter Overflow */
  44. #define TOVF_ERR7 0x00800000 /* Timer 7 Counter Overflow */
  45. #define TRUN4 0x10000000 /* Timer 4 Slave Enable Status */
  46. #define TRUN5 0x20000000 /* Timer 5 Slave Enable Status */
  47. #define TRUN6 0x40000000 /* Timer 6 Slave Enable Status */
  48. #define TRUN7 0x80000000 /* Timer 7 Slave Enable Status */
  49. /* Alternate Deprecated Macros Provided For Backwards Code Compatibility */
  50. #define TOVL_ERR0 TOVF_ERR0
  51. #define TOVL_ERR1 TOVF_ERR1
  52. #define TOVL_ERR2 TOVF_ERR2
  53. #define TOVL_ERR3 TOVF_ERR3
  54. #define TOVL_ERR4 TOVF_ERR4
  55. #define TOVL_ERR5 TOVF_ERR5
  56. #define TOVL_ERR6 TOVF_ERR6
  57. #define TOVL_ERR7 TOVF_ERR7
  58. /* TIMERx_CONFIG Masks */
  59. #define PWM_OUT 0x0001 /* Pulse-Width Modulation Output Mode */
  60. #define WDTH_CAP 0x0002 /* Width Capture Input Mode */
  61. #define EXT_CLK 0x0003 /* External Clock Mode */
  62. #define PULSE_HI 0x0004 /* Action Pulse (Positive/Negative*) */
  63. #define PERIOD_CNT 0x0008 /* Period Count */
  64. #define IRQ_ENA 0x0010 /* Interrupt Request Enable */
  65. #define TIN_SEL 0x0020 /* Timer Input Select */
  66. #define OUT_DIS 0x0040 /* Output Pad Disable */
  67. #define CLK_SEL 0x0080 /* Timer Clock Select */
  68. #define TOGGLE_HI 0x0100 /* PWM_OUT PULSE_HI Toggle Mode */
  69. #define EMU_RUN 0x0200 /* Emulation Behavior Select */
  70. #define ERR_TYP 0xC000 /* Error Type */
  71. #endif