pinctrl-pic32.h 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133
  1. /* SPDX-License-Identifier: GPL-2.0-only */
  2. /*
  3. * PIC32 pinctrl driver
  4. *
  5. * Joshua Henderson, <joshua.henderson@microchip.com>
  6. * Copyright (C) 2015 Microchip Technology Inc. All rights reserved.
  7. */
  8. #ifndef PINCTRL_PINCTRL_PIC32_H
  9. #define PINCTRL_PINCTRL_PIC32_H
  10. /* PORT Registers */
  11. #define ANSEL_REG 0x00
  12. #define TRIS_REG 0x10
  13. #define PORT_REG 0x20
  14. #define LAT_REG 0x30
  15. #define ODCU_REG 0x40
  16. #define CNPU_REG 0x50
  17. #define CNPD_REG 0x60
  18. #define CNCON_REG 0x70
  19. #define CNEN_REG 0x80
  20. #define CNSTAT_REG 0x90
  21. #define CNNE_REG 0xA0
  22. #define CNF_REG 0xB0
  23. /* Input PPS Registers */
  24. #define INT1R 0x04
  25. #define INT2R 0x08
  26. #define INT3R 0x0C
  27. #define INT4R 0x10
  28. #define T2CKR 0x18
  29. #define T3CKR 0x1C
  30. #define T4CKR 0x20
  31. #define T5CKR 0x24
  32. #define T6CKR 0x28
  33. #define T7CKR 0x2C
  34. #define T8CKR 0x30
  35. #define T9CKR 0x34
  36. #define IC1R 0x38
  37. #define IC2R 0x3C
  38. #define IC3R 0x40
  39. #define IC4R 0x44
  40. #define IC5R 0x48
  41. #define IC6R 0x4C
  42. #define IC7R 0x50
  43. #define IC8R 0x54
  44. #define IC9R 0x58
  45. #define OCFAR 0x60
  46. #define U1RXR 0x68
  47. #define U1CTSR 0x6C
  48. #define U2RXR 0x70
  49. #define U2CTSR 0x74
  50. #define U3RXR 0x78
  51. #define U3CTSR 0x7C
  52. #define U4RXR 0x80
  53. #define U4CTSR 0x84
  54. #define U5RXR 0x88
  55. #define U5CTSR 0x8C
  56. #define U6RXR 0x90
  57. #define U6CTSR 0x94
  58. #define SDI1R 0x9C
  59. #define SS1INR 0xA0
  60. #define SDI2R 0xA8
  61. #define SS2INR 0xAC
  62. #define SDI3R 0xB4
  63. #define SS3INR 0xB8
  64. #define SDI4R 0xC0
  65. #define SS4INR 0xC4
  66. #define SDI5R 0xCC
  67. #define SS5INR 0xD0
  68. #define SDI6R 0xD8
  69. #define SS6INR 0xDC
  70. #define C1RXR 0xE0
  71. #define C2RXR 0xE4
  72. #define REFCLKI1R 0xE8
  73. #define REFCLKI3R 0xF0
  74. #define REFCLKI4R 0xF4
  75. /* Output PPS Registers */
  76. #define RPA14R 0x138
  77. #define RPA15R 0x13C
  78. #define RPB0R 0x140
  79. #define RPB1R 0x144
  80. #define RPB2R 0x148
  81. #define RPB3R 0x14C
  82. #define RPB5R 0x154
  83. #define RPB6R 0x158
  84. #define RPB7R 0x15C
  85. #define RPB8R 0x160
  86. #define RPB9R 0x164
  87. #define RPB10R 0x168
  88. #define RPB14R 0x178
  89. #define RPB15R 0x17C
  90. #define RPC1R 0x184
  91. #define RPC2R 0x188
  92. #define RPC3R 0x18C
  93. #define RPC4R 0x190
  94. #define RPC13R 0x1B4
  95. #define RPC14R 0x1B8
  96. #define RPD0R 0x1C0
  97. #define RPD1R 0x1C4
  98. #define RPD2R 0x1C8
  99. #define RPD3R 0x1CC
  100. #define RPD4R 0x1D0
  101. #define RPD5R 0x1D4
  102. #define RPD6R 0x1D8
  103. #define RPD7R 0x1DC
  104. #define RPD9R 0x1E4
  105. #define RPD10R 0x1E8
  106. #define RPD11R 0x1EC
  107. #define RPD12R 0x1F0
  108. #define RPD14R 0x1F8
  109. #define RPD15R 0x1FC
  110. #define RPE3R 0x20C
  111. #define RPE5R 0x214
  112. #define RPE8R 0x220
  113. #define RPE9R 0x224
  114. #define RPF0R 0x240
  115. #define RPF1R 0x244
  116. #define RPF2R 0x248
  117. #define RPF3R 0x24C
  118. #define RPF4R 0x250
  119. #define RPF5R 0x254
  120. #define RPF8R 0x260
  121. #define RPF12R 0x270
  122. #define RPF13R 0x274
  123. #define RPG0R 0x280
  124. #define RPG1R 0x284
  125. #define RPG6R 0x298
  126. #define RPG7R 0x29C
  127. #define RPG8R 0x2A0
  128. #define RPG9R 0x2A4
  129. #endif /* PINCTRL_PINCTRL_PIC32_H */