ls1c_regs.h 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145
  1. // 龙芯1c外设寄存器
  2. #ifndef __OPENLOONGSON_LS1C_REGS_H
  3. #define __OPENLOONGSON_LS1C_REGS_H
  4. // 时钟相关寄存器地址
  5. #define LS1C_START_FREQ (0xbfe78030)
  6. #define LS1C_CLK_DIV_PARAM (0xbfe78034)
  7. // gpio相关寄存器地址
  8. #define LS1C_GPIO_CFG0 (0xbfd010c0)
  9. #define LS1C_GPIO_EN0 (0xbfd010d0)
  10. #define LS1C_GPIO_IN0 (0xbfd010e0)
  11. #define LS1C_GPIO_OUT0 (0xbfd010f0)
  12. #define LS1C_GPIO_CFG1 (0xbfd010c4)
  13. #define LS1C_GPIO_EN1 (0xbfd010d4)
  14. #define LS1C_GPIO_IN1 (0xbfd010e4)
  15. #define LS1C_GPIO_OUT1 (0xbfd010f4)
  16. #define LS1C_GPIO_CFG2 (0xbfd010c8)
  17. #define LS1C_GPIO_EN2 (0xbfd010d8)
  18. #define LS1C_GPIO_IN2 (0xbfd010e8)
  19. #define LS1C_GPIO_OUT2 (0xbfd010f8)
  20. #define LS1C_GPIO_CFG3 (0xbfd010cc)
  21. #define LS1C_GPIO_EN3 (0xbfd010dc)
  22. #define LS1C_GPIO_IN3 (0xbfd010ec)
  23. #define LS1C_GPIO_OUT3 (0xbfd010fc)
  24. // 复用相关寄存器
  25. #define LS1C_CBUS_FIRST0 (0xbfd011c0)
  26. #define LS1C_CBUS_SECOND0 (0xbfd011d0)
  27. #define LS1C_CBUS_THIRD0 (0xbfd011e0)
  28. #define LS1C_CBUS_FOURTH0 (0xbfd011f0)
  29. #define LS1C_CBUS_FIFTH0 (0xbfd01200)
  30. #define LS1C_CBUS_FIRST1 (0xbfd011c4)
  31. #define LS1C_CBUS_SECOND1 (0xbfd011d4)
  32. #define LS1C_CBUS_THIRD1 (0xbfd011e4)
  33. #define LS1C_CBUS_FOURTH1 (0xbfd011f4)
  34. #define LS1C_CBUS_FIFTH1 (0xbfd01204)
  35. #define LS1C_CBUS_FIRST2 (0xbfd011c8)
  36. #define LS1C_CBUS_SECOND2 (0xbfd011d8)
  37. #define LS1C_CBUS_THIRD2 (0xbfd011e8)
  38. #define LS1C_CBUS_FOURTH2 (0xbfd011f8)
  39. #define LS1C_CBUS_FIFTH2 (0xbfd01208)
  40. #define LS1C_CBUS_FIRST3 (0xbfd011cc)
  41. #define LS1C_CBUS_SECOND3 (0xbfd011dc)
  42. #define LS1C_CBUS_THIRD3 (0xbfd011ec)
  43. #define LS1C_CBUS_FOURTH3 (0xbfd011fc)
  44. #define LS1C_CBUS_FIFTH3 (0xbfd0120c)
  45. // PWM寄存器偏移
  46. #define LS1C_PWM_CNTR (0x0)
  47. #define LS1C_PWM_HRC (0x4)
  48. #define LS1C_PWM_LRC (0x8)
  49. #define LS1C_PWM_CTRL (0xC)
  50. // PWM基地址
  51. #define LS1C_REG_BASE_PWM0 (0xbfe5c000)
  52. #define LS1C_REG_BASE_PWM1 (0xbfe5c010)
  53. #define LS1C_REG_BASE_PWM2 (0xbfe5c020)
  54. #define LS1C_REG_BASE_PWM3 (0xbfe5c030)
  55. //CAN基地址
  56. #define LS1C_REG_BASE_CAN0 (0xbfe50000)
  57. #define LS1C_REG_BASE_CAN1 (0xbfe54000)
  58. // 中断配置寄存器
  59. #define LS1C_INT0_SR (0xbfd01040)
  60. #define LS1C_INT0_EN (0xbfd01044)
  61. #define LS1C_INT0_SET (0xbfd01048)
  62. #define LS1C_INT0_CLR (0xbfd0104c)
  63. #define LS1C_INT0_POL (0xbfd01050)
  64. #define LS1C_INT0_EDGE (0xbfd01054)
  65. #define LS1c_INT1_SR (0xbfd01058)
  66. #define LS1C_INT1_EN (0xbfd0105c)
  67. #define LS1C_INT1_SET (0xbfd01060)
  68. #define LS1C_INT1_CLR (0xbfd01064)
  69. #define LS1C_INT1_POL (0xbfd01068)
  70. #define LS1C_INT1_EDGE (0xbfd0106c)
  71. #define LS1C_INT2_SR (0xbfd01070)
  72. #define LS1C_INT2_EN (0xbfd01074)
  73. #define LS1C_INT2_SET (0xbfd01078)
  74. #define LS1C_INT2_CLR (0xbfd0107c)
  75. #define LS1C_INT2_POL (0xbfd01080)
  76. #define LS1C_INT2_EDGE (0xbfd01084)
  77. #define LS1C_INT3_SR (0xbfd01088)
  78. #define LS1C_INT3_EN (0xbfd0108c)
  79. #define LS1C_INT3_SET (0xbfd01090)
  80. #define LS1C_INT3_CLR (0xbfd01094)
  81. #define LS1C_INT3_POL (0xbfd01098)
  82. #define LS1C_INT3_EDGE (0xbfd0109c)
  83. #define LS1C_INT4_SR (0xbfd010a0)
  84. #define LS1C_INT4_EN (0xbfd010a4)
  85. #define LS1C_INT4_SET (0xbfd010a8)
  86. #define LS1C_INT4_CLR (0xbfd010ac)
  87. #define LS1C_INT4_POL (0xbfd010b0)
  88. #define LS1C_INT4_EDGE (0xbfd010b4)
  89. // I2C寄存器
  90. #define LS1C_I2C0_BASE (0xbfe58000)
  91. #define LS1C_I2C1_BASE (0xbfe68000)
  92. #define LS1C_I2C2_BASE (0xbfe70000)
  93. // SPI寄存器
  94. #define LS1C_SPI0_BASE (0xbfe80000)
  95. #define LS1C_SPI1_BASE (0xbfec0000)
  96. // 串口寄存器
  97. #define LS1C_UART00_BASE (0xbfe40000)
  98. #define LS1C_UART01_BASE (0xbfe41000)
  99. #define LS1C_UART1_BASE (0xbfe44000)
  100. #define LS1C_UART2_BASE (0xbfe48000)
  101. #define LS1C_UART3_BASE (0xbfe4c000)
  102. #define LS1C_UART4_BASE (0xbfe4c400)
  103. #define LS1C_UART5_BASE (0xbfe4c500)
  104. #define LS1C_UART6_BASE (0xbfe4c600)
  105. #define LS1C_UART7_BASE (0xbfe4c700)
  106. #define LS1C_UART8_BASE (0xbfe4c800)
  107. #define LS1C_UART9_BASE (0xbfe4c900)
  108. #define LS1C_UART10_BASE (0xbfe4ca00)
  109. #define LS1C_UART11_BASE (0xbfe4cb00)
  110. #endif