r_pdl_bsc.h 6.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  1. /*""FILE COMMENT""*******************************************************
  2. * System Name : BSC API for RX62Nxx
  3. * File Name : r_pdl_bsc.h
  4. * Version : 1.02
  5. * Contents : BSC API header
  6. * Customer :
  7. * Model :
  8. * Order :
  9. * CPU : RX
  10. * Compiler : RXC
  11. * OS : Nothing
  12. * Programmer :
  13. * Note :
  14. ************************************************************************
  15. * Copyright, 2011. Renesas Electronics Corporation
  16. * and Renesas Solutions Corporation
  17. ************************************************************************
  18. * History : 2011.04.08
  19. * : Ver 1.02
  20. * : CS-5 release.
  21. *""FILE COMMENT END""**************************************************/
  22. #ifndef R_PDL_BSC_H
  23. #define R_PDL_BSC_H
  24. #include "r_pdl_common_defs_RX62Nxx.h"
  25. /* Function prototypes */
  26. bool R_BSC_Create(
  27. uint32_t,
  28. uint32_t,
  29. uint8_t,
  30. void *,
  31. uint8_t
  32. );
  33. bool R_BSC_CreateArea(
  34. uint8_t,
  35. uint16_t,
  36. uint8_t,
  37. uint8_t,
  38. uint8_t,
  39. uint8_t,
  40. uint8_t,
  41. uint8_t,
  42. uint8_t,
  43. uint8_t,
  44. uint8_t,
  45. uint8_t,
  46. uint8_t,
  47. uint8_t,
  48. uint8_t
  49. );
  50. bool R_BSC_SDRAM_CreateArea(
  51. uint16_t,
  52. uint16_t,
  53. uint8_t,
  54. uint8_t,
  55. uint8_t,
  56. uint8_t,
  57. uint8_t,
  58. uint8_t,
  59. uint8_t,
  60. uint8_t,
  61. uint8_t,
  62. uint16_t
  63. );
  64. bool R_BSC_Destroy(
  65. uint8_t
  66. );
  67. bool R_BSC_Control(
  68. uint16_t
  69. );
  70. bool R_BSC_GetStatus(
  71. uint8_t *,
  72. uint16_t *,
  73. uint8_t *
  74. );
  75. /* R_BSC_Create parameter options */
  76. /* Configuration1 (pin select control) */
  77. /* Chip select pin selection */
  78. #define PDL_BSC_CS0_A 0x00000001ul
  79. #define PDL_BSC_CS0_B 0x00000002ul
  80. #define PDL_BSC_CS1_A 0x00000004ul
  81. #define PDL_BSC_CS1_B 0x00000008ul
  82. #define PDL_BSC_CS1_C 0x00000010ul
  83. #define PDL_BSC_CS2_A 0x00000020ul
  84. #define PDL_BSC_CS2_B 0x00000040ul
  85. #define PDL_BSC_CS2_C 0x00000080ul
  86. #define PDL_BSC_CS3_A 0x00000100ul
  87. #define PDL_BSC_CS3_B 0x00000200ul
  88. #define PDL_BSC_CS3_C 0x00000400ul
  89. #define PDL_BSC_CS4_A 0x00000800ul
  90. #define PDL_BSC_CS4_B 0x00001000ul
  91. #define PDL_BSC_CS4_C 0x00002000ul
  92. #define PDL_BSC_CS5_A 0x00004000ul
  93. #define PDL_BSC_CS5_B 0x00008000ul
  94. #define PDL_BSC_CS5_C 0x00010000ul
  95. #define PDL_BSC_CS6_A 0x00020000ul
  96. #define PDL_BSC_CS6_B 0x00040000ul
  97. #define PDL_BSC_CS6_C 0x00080000ul
  98. #define PDL_BSC_CS7_A 0x00100000ul
  99. #define PDL_BSC_CS7_B 0x00200000ul
  100. #define PDL_BSC_CS7_C 0x00400000ul
  101. /* Address (A23-A16) pin selection */
  102. #define PDL_BSC_A23_A16_A 0x00800000ul
  103. #define PDL_BSC_A23_A16_B 0x01000000ul
  104. /* WAIT pin selection */
  105. #define PDL_BSC_WAIT_NOT_USED 0x02000000ul
  106. #define PDL_BSC_WAIT_A 0x04000000ul
  107. #define PDL_BSC_WAIT_B 0x08000000ul
  108. #define PDL_BSC_WAIT_C 0x10000000ul
  109. #define PDL_BSC_WAIT_D 0x20000000ul
  110. /* Configuration2 (output enable control) */
  111. /* Address output control */
  112. #define PDL_BSC_A9_A0_DISABLE 0x00000001ul
  113. #define PDL_BSC_A9_A4_DISABLE 0x00000002ul
  114. #define PDL_BSC_A9_A8_DISABLE 0x00000004ul
  115. #define PDL_BSC_A10_DISABLE 0x00000008ul
  116. #define PDL_BSC_A11_DISABLE 0x00000010ul
  117. #define PDL_BSC_A12_DISABLE 0x00000020ul
  118. #define PDL_BSC_A13_DISABLE 0x00000040ul
  119. #define PDL_BSC_A14_DISABLE 0x00000080ul
  120. #define PDL_BSC_A15_DISABLE 0x00000100ul
  121. #define PDL_BSC_A16_DISABLE 0x00000200ul
  122. #define PDL_BSC_A17_DISABLE 0x00000400ul
  123. #define PDL_BSC_A18_DISABLE 0x00000800ul
  124. #define PDL_BSC_A19_DISABLE 0x00001000ul
  125. #define PDL_BSC_A20_DISABLE 0x00002000ul
  126. #define PDL_BSC_A21_DISABLE 0x00004000ul
  127. #define PDL_BSC_A22_DISABLE 0x00008000ul
  128. #define PDL_BSC_A23_DISABLE 0x00010000ul
  129. /* SDRAM output control */
  130. #define PDL_BSC_SDRAM_PINS_DISABLE 0x00020000ul
  131. #define PDL_BSC_SDRAM_PINS_ENABLE 0x00040000ul
  132. #define PDL_BSC_SDRAM_DQM1_DISABLE 0x00080000ul
  133. #define PDL_BSC_SDRAM_DQM1_ENABLE 0x00100000ul
  134. /* Configuration3 (error control) */
  135. /* Error monitoring */
  136. #define PDL_BSC_ERROR_ILLEGAL_ADDRESS_ENABLE 0x01u
  137. #define PDL_BSC_ERROR_ILLEGAL_ADDRESS_DISABLE 0x02u
  138. #define PDL_BSC_ERROR_TIME_OUT_ENABLE 0x04u
  139. #define PDL_BSC_ERROR_TIME_OUT_DISABLE 0x08u
  140. /* R_BSC_CreateArea parameter options */
  141. /* Configuration selection */
  142. /* Bus width */
  143. #define PDL_BSC_WIDTH_16 0x0001u
  144. #define PDL_BSC_WIDTH_8 0x0002u
  145. #define PDL_BSC_WIDTH_32 0x0004u
  146. /* Endian mode */
  147. #define PDL_BSC_ENDIAN_SAME 0x0008u
  148. #define PDL_BSC_ENDIAN_OPPOSITE 0x0010u
  149. /* Write access mode */
  150. #define PDL_BSC_WRITE_BYTE 0x0020u
  151. #define PDL_BSC_WRITE_SINGLE 0x0040u
  152. /* External wait control */
  153. #define PDL_BSC_WAIT_DISABLE 0x0080u
  154. #define PDL_BSC_WAIT_ENABLE 0x0100u
  155. /* Page access control */
  156. #define PDL_BSC_PAGE_READ_DISABLE 0x0200u
  157. #define PDL_BSC_PAGE_READ_NORMAL 0x0400u
  158. #define PDL_BSC_PAGE_READ_CONTINUOUS 0x0800u
  159. #define PDL_BSC_PAGE_WRITE_DISABLE 0x1000u
  160. #define PDL_BSC_PAGE_WRITE_ENABLE 0x2000u
  161. /* R_BSC_Control parameter options */
  162. #define PDL_BSC_ERROR_CLEAR 0x0001u
  163. #define PDL_BSC_SDRAM_INITIALIZATION 0x0002u
  164. #define PDL_BSC_SDRAM_AUTO_REFRESH_ENABLE 0x0004u
  165. #define PDL_BSC_SDRAM_AUTO_REFRESH_DISABLE 0x0008u
  166. #define PDL_BSC_SDRAM_SELF_REFRESH_ENABLE 0x0010u
  167. #define PDL_BSC_SDRAM_SELF_REFRESH_DISABLE 0x0020u
  168. #define PDL_BSC_SDRAM_ENABLE 0x0040u
  169. #define PDL_BSC_SDRAM_DISABLE 0x0080u
  170. #define PDL_BSC_DISABLE_BUSERR_IRQ 0x0100u
  171. /* R_BSC_SDRAM_CreateArea parameter options */
  172. /* Configuration selection */
  173. /* Bus width */
  174. #define PDL_BSC_SDRAM_WIDTH_16 0x0001u
  175. #define PDL_BSC_SDRAM_WIDTH_8 0x0002u
  176. #define PDL_BSC_SDRAM_WIDTH_32 0x0004u
  177. /* Endian mode */
  178. #define PDL_BSC_SDRAM_ENDIAN_SAME 0x0008u
  179. #define PDL_BSC_SDRAM_ENDIAN_OPPOSITE 0x0010u
  180. /* Continuous access mode */
  181. #define PDL_BSC_SDRAM_CONT_ACCESS_ENABLE 0x0020u
  182. #define PDL_BSC_SDRAM_CONT_ACCESS_DISABLE 0x0040u
  183. /* Address multiplex selection */
  184. #define PDL_BSC_SDRAM_8_BIT_SHIFT 0x0080u
  185. #define PDL_BSC_SDRAM_9_BIT_SHIFT 0x0100u
  186. #define PDL_BSC_SDRAM_10_BIT_SHIFT 0x0200u
  187. #define PDL_BSC_SDRAM_11_BIT_SHIFT 0x0400u
  188. #endif
  189. /* End of file */