gh_spi2.h 64 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826
  1. /*!
  2. *******************************************************************************
  3. **
  4. ** \file gh_spi2.h
  5. **
  6. ** \brief Slave interface; Slave3, TSSI.
  7. **
  8. ** Copyright: 2012 - 2013 (C) GoKe Microelectronics ShangHai Branch
  9. **
  10. ** \attention THIS SAMPLE CODE IS PROVIDED AS IS. GOKE MICROELECTRONICS
  11. ** ACCEPTS NO RESPONSIBILITY OR LIABILITY FOR ANY ERRORS OR
  12. ** OMMISSIONS.
  13. **
  14. ** \note Do not modify this file as it is generated automatically.
  15. **
  16. ******************************************************************************/
  17. #ifndef _GH_SPI2_H
  18. #define _GH_SPI2_H
  19. #ifdef __LINUX__
  20. #include "reg4linux.h"
  21. #else
  22. #define FIO_ADDRESS(block,address) (address)
  23. #define FIO_MOFFSET(block,moffset) (moffset)
  24. #endif
  25. #ifndef __LINUX__
  26. #include "gtypes.h" /* global type definitions */
  27. #include "gh_lib_cfg.h" /* configuration */
  28. #endif
  29. #define GH_SPI2_ENABLE_DEBUG_PRINT 0
  30. #ifdef __LINUX__
  31. #define GH_SPI2_DEBUG_PRINT_FUNCTION printk
  32. #else
  33. #define GH_SPI2_DEBUG_PRINT_FUNCTION printf
  34. #endif
  35. #ifndef __LINUX__
  36. #if GH_SPI2_ENABLE_DEBUG_PRINT
  37. #include <stdio.h>
  38. #endif
  39. #endif
  40. /* check configuration */
  41. #ifndef GH_INLINE_LEVEL
  42. #error "GH_INLINE_LEVEL is not defined!"
  43. #endif
  44. #if GH_INLINE_LEVEL > 2
  45. #error "GH_INLINE_LEVEL must be set 0, 1 or 2!"
  46. #endif
  47. #ifndef GH_INLINE
  48. #error "GH_INLINE is not defined!"
  49. #endif
  50. /* disable inlining for debugging */
  51. #ifdef DEBUG
  52. #undef GH_INLINE_LEVEL
  53. #define GH_INLINE_LEVEL 0
  54. #endif
  55. /*----------------------------------------------------------------------------*/
  56. /* registers */
  57. /*----------------------------------------------------------------------------*/
  58. #define REG_SPI2_CTRLR0 FIO_ADDRESS(SPI2,0xA001D000) /* read/write */
  59. #define REG_SPI2_CTRLR1 FIO_ADDRESS(SPI2,0xA001D004) /* read/write */
  60. #define REG_SPI2_SSIENR FIO_ADDRESS(SPI2,0xA001D008) /* read/write */
  61. #define REG_SPI2_SER FIO_ADDRESS(SPI2,0xA001D010) /* read/write */
  62. #define REG_SPI2_BAUDR FIO_ADDRESS(SPI2,0xA001D014) /* read/write */
  63. #define REG_SPI2_TXFTLR FIO_ADDRESS(SPI2,0xA001D018) /* read/write */
  64. #define REG_SPI2_RXFTLR FIO_ADDRESS(SPI2,0xA001D01C) /* read/write */
  65. #define REG_SPI2_TXFLR FIO_ADDRESS(SPI2,0xA001D020) /* read/write */
  66. #define REG_SPI2_RXFLR FIO_ADDRESS(SPI2,0xA001D024) /* read/write */
  67. #define REG_SPI2_SR FIO_ADDRESS(SPI2,0xA001D028) /* read */
  68. #define REG_SPI2_IMR FIO_ADDRESS(SPI2,0xA001D02C) /* read/write */
  69. #define REG_SPI2_ISR FIO_ADDRESS(SPI2,0xA001D030) /* read */
  70. #define REG_SPI2_RISR FIO_ADDRESS(SPI2,0xA001D034) /* read */
  71. #define REG_SPI2_TXOICR FIO_ADDRESS(SPI2,0xA001D038) /* read */
  72. #define REG_SPI2_RXOICR FIO_ADDRESS(SPI2,0xA001D03C) /* read */
  73. #define REG_SPI2_RXUICR FIO_ADDRESS(SPI2,0xA001D040) /* read */
  74. #define REG_SPI2_MSTICR FIO_ADDRESS(SPI2,0xA001D044) /* read */
  75. #define REG_SPI2_ICR FIO_ADDRESS(SPI2,0xA001D048) /* read */
  76. #define REG_SPI2_IDR FIO_ADDRESS(SPI2,0xA001D058) /* read */
  77. #define REG_SPI2_DR FIO_ADDRESS(SPI2,0xA001D060) /* read */
  78. #define REG_SPI2_DW FIO_ADDRESS(SPI2,0xA001D060) /* write */
  79. /*----------------------------------------------------------------------------*/
  80. /* bit group structures */
  81. /*----------------------------------------------------------------------------*/
  82. typedef union { /* SPI2_CTRLR0 */
  83. U32 all;
  84. struct {
  85. U32 dfs : 4;
  86. U32 frf : 2;
  87. U32 scph : 1;
  88. U32 scpol : 1;
  89. U32 tmod : 2;
  90. U32 slv_oe : 1;
  91. U32 srl : 1;
  92. U32 cfs : 4;
  93. U32 : 16;
  94. } bitc;
  95. } GH_SPI2_CTRLR0_S;
  96. typedef union { /* SPI2_CTRLR1 */
  97. U32 all;
  98. struct {
  99. U32 ndf : 16;
  100. U32 : 16;
  101. } bitc;
  102. } GH_SPI2_CTRLR1_S;
  103. typedef union { /* SPI2_SSIENR */
  104. U32 all;
  105. struct {
  106. U32 ssi_enb : 1;
  107. U32 : 31;
  108. } bitc;
  109. } GH_SPI2_SSIENR_S;
  110. typedef union { /* SPI2_SER */
  111. U32 all;
  112. struct {
  113. U32 ser_l : 2;
  114. U32 : 2;
  115. U32 ser_h : 4;
  116. U32 : 24;
  117. } bitc;
  118. } GH_SPI2_SER_S;
  119. typedef union { /* SPI2_BAUDR */
  120. U32 all;
  121. struct {
  122. U32 sckdv : 16;
  123. U32 : 16;
  124. } bitc;
  125. } GH_SPI2_BAUDR_S;
  126. typedef union { /* SPI2_TXFTLR */
  127. U32 all;
  128. struct {
  129. U32 tft : 4;
  130. U32 : 28;
  131. } bitc;
  132. } GH_SPI2_TXFTLR_S;
  133. typedef union { /* SPI2_RXFTLR */
  134. U32 all;
  135. struct {
  136. U32 rft : 4;
  137. U32 : 28;
  138. } bitc;
  139. } GH_SPI2_RXFTLR_S;
  140. typedef union { /* SPI2_TXFLR */
  141. U32 all;
  142. struct {
  143. U32 txtfl : 5;
  144. U32 : 27;
  145. } bitc;
  146. } GH_SPI2_TXFLR_S;
  147. typedef union { /* SPI2_RXFLR */
  148. U32 all;
  149. struct {
  150. U32 rxtfl : 5;
  151. U32 : 27;
  152. } bitc;
  153. } GH_SPI2_RXFLR_S;
  154. typedef union { /* SPI2_SR */
  155. U32 all;
  156. struct {
  157. U32 busy : 1;
  158. U32 tfnf : 1;
  159. U32 tfe : 1;
  160. U32 rfne : 1;
  161. U32 rff : 1;
  162. U32 txe : 1;
  163. U32 dcol : 1;
  164. U32 : 25;
  165. } bitc;
  166. } GH_SPI2_SR_S;
  167. typedef union { /* SPI2_IMR */
  168. U32 all;
  169. struct {
  170. U32 txeim : 1;
  171. U32 txoim : 1;
  172. U32 rxuim : 1;
  173. U32 rxoim : 1;
  174. U32 rxfim : 1;
  175. U32 mstim : 1;
  176. U32 : 26;
  177. } bitc;
  178. } GH_SPI2_IMR_S;
  179. typedef union { /* SPI2_ISR */
  180. U32 all;
  181. struct {
  182. U32 txeis : 1;
  183. U32 txois : 1;
  184. U32 rxuis : 1;
  185. U32 rxois : 1;
  186. U32 rxfis : 1;
  187. U32 mstis : 1;
  188. U32 : 26;
  189. } bitc;
  190. } GH_SPI2_ISR_S;
  191. typedef union { /* SPI2_RISR */
  192. U32 all;
  193. struct {
  194. U32 txeir : 1;
  195. U32 txoir : 1;
  196. U32 rxuir : 1;
  197. U32 rxoir : 1;
  198. U32 rxfir : 1;
  199. U32 mstir : 1;
  200. U32 : 26;
  201. } bitc;
  202. } GH_SPI2_RISR_S;
  203. typedef union { /* SPI2_TXOICR */
  204. U32 all;
  205. struct {
  206. U32 txoicr : 1;
  207. U32 : 31;
  208. } bitc;
  209. } GH_SPI2_TXOICR_S;
  210. typedef union { /* SPI2_RXOICR */
  211. U32 all;
  212. struct {
  213. U32 rxoicr : 1;
  214. U32 : 31;
  215. } bitc;
  216. } GH_SPI2_RXOICR_S;
  217. typedef union { /* SPI2_RXUICR */
  218. U32 all;
  219. struct {
  220. U32 rxuicr : 1;
  221. U32 : 31;
  222. } bitc;
  223. } GH_SPI2_RXUICR_S;
  224. typedef union { /* SPI2_MSTICR */
  225. U32 all;
  226. struct {
  227. U32 msticr : 1;
  228. U32 : 31;
  229. } bitc;
  230. } GH_SPI2_MSTICR_S;
  231. typedef union { /* SPI2_ICR */
  232. U32 all;
  233. struct {
  234. U32 icr : 1;
  235. U32 : 31;
  236. } bitc;
  237. } GH_SPI2_ICR_S;
  238. typedef union { /* SPI2_IDR */
  239. U32 all;
  240. struct {
  241. U32 id : 1;
  242. U32 : 31;
  243. } bitc;
  244. } GH_SPI2_IDR_S;
  245. typedef union { /* SPI2_DR */
  246. U32 all;
  247. struct {
  248. U32 dr : 16;
  249. U32 : 16;
  250. } bitc;
  251. } GH_SPI2_DR_S;
  252. typedef union { /* SPI2_DW */
  253. U32 all;
  254. struct {
  255. U32 dw : 16;
  256. U32 : 16;
  257. } bitc;
  258. } GH_SPI2_DW_S;
  259. /*----------------------------------------------------------------------------*/
  260. /* mirror variables */
  261. /*----------------------------------------------------------------------------*/
  262. extern GH_SPI2_DW_S m_spi2_dw;
  263. #ifdef __cplusplus
  264. extern "C" {
  265. #endif
  266. /*----------------------------------------------------------------------------*/
  267. /* register SPI2_CTRLR0 (read/write) */
  268. /*----------------------------------------------------------------------------*/
  269. #if GH_INLINE_LEVEL == 0
  270. /*! \brief Writes the register 'SPI2_CTRLR0'. */
  271. void GH_SPI2_set_CTRLR0(U32 data);
  272. /*! \brief Reads the register 'SPI2_CTRLR0'. */
  273. U32 GH_SPI2_get_CTRLR0(void);
  274. /*! \brief Writes the bit group 'DFS' of register 'SPI2_CTRLR0'. */
  275. void GH_SPI2_set_CTRLR0_DFS(U8 data);
  276. /*! \brief Reads the bit group 'DFS' of register 'SPI2_CTRLR0'. */
  277. U8 GH_SPI2_get_CTRLR0_DFS(void);
  278. /*! \brief Writes the bit group 'FRF' of register 'SPI2_CTRLR0'. */
  279. void GH_SPI2_set_CTRLR0_FRF(U8 data);
  280. /*! \brief Reads the bit group 'FRF' of register 'SPI2_CTRLR0'. */
  281. U8 GH_SPI2_get_CTRLR0_FRF(void);
  282. /*! \brief Writes the bit group 'SCPH' of register 'SPI2_CTRLR0'. */
  283. void GH_SPI2_set_CTRLR0_SCPH(U8 data);
  284. /*! \brief Reads the bit group 'SCPH' of register 'SPI2_CTRLR0'. */
  285. U8 GH_SPI2_get_CTRLR0_SCPH(void);
  286. /*! \brief Writes the bit group 'SCPOL' of register 'SPI2_CTRLR0'. */
  287. void GH_SPI2_set_CTRLR0_SCPOL(U8 data);
  288. /*! \brief Reads the bit group 'SCPOL' of register 'SPI2_CTRLR0'. */
  289. U8 GH_SPI2_get_CTRLR0_SCPOL(void);
  290. /*! \brief Writes the bit group 'TMOD' of register 'SPI2_CTRLR0'. */
  291. void GH_SPI2_set_CTRLR0_TMOD(U8 data);
  292. /*! \brief Reads the bit group 'TMOD' of register 'SPI2_CTRLR0'. */
  293. U8 GH_SPI2_get_CTRLR0_TMOD(void);
  294. /*! \brief Writes the bit group 'SLV_OE' of register 'SPI2_CTRLR0'. */
  295. void GH_SPI2_set_CTRLR0_SLV_OE(U8 data);
  296. /*! \brief Reads the bit group 'SLV_OE' of register 'SPI2_CTRLR0'. */
  297. U8 GH_SPI2_get_CTRLR0_SLV_OE(void);
  298. /*! \brief Writes the bit group 'SRL' of register 'SPI2_CTRLR0'. */
  299. void GH_SPI2_set_CTRLR0_SRL(U8 data);
  300. /*! \brief Reads the bit group 'SRL' of register 'SPI2_CTRLR0'. */
  301. U8 GH_SPI2_get_CTRLR0_SRL(void);
  302. /*! \brief Writes the bit group 'CFS' of register 'SPI2_CTRLR0'. */
  303. void GH_SPI2_set_CTRLR0_CFS(U8 data);
  304. /*! \brief Reads the bit group 'CFS' of register 'SPI2_CTRLR0'. */
  305. U8 GH_SPI2_get_CTRLR0_CFS(void);
  306. #else /* GH_INLINE_LEVEL == 0 */
  307. GH_INLINE void GH_SPI2_set_CTRLR0(U32 data)
  308. {
  309. *(volatile U32 *)REG_SPI2_CTRLR0 = data;
  310. #if GH_SPI2_ENABLE_DEBUG_PRINT
  311. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0] <-- 0x%08x\n",
  312. REG_SPI2_CTRLR0,data,data);
  313. #endif
  314. }
  315. GH_INLINE U32 GH_SPI2_get_CTRLR0(void)
  316. {
  317. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  318. #if GH_SPI2_ENABLE_DEBUG_PRINT
  319. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0] --> 0x%08x\n",
  320. REG_SPI2_CTRLR0,value);
  321. #endif
  322. return value;
  323. }
  324. GH_INLINE void GH_SPI2_set_CTRLR0_DFS(U8 data)
  325. {
  326. GH_SPI2_CTRLR0_S d;
  327. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  328. d.bitc.dfs = data;
  329. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  330. #if GH_SPI2_ENABLE_DEBUG_PRINT
  331. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_DFS] <-- 0x%08x\n",
  332. REG_SPI2_CTRLR0,d.all,d.all);
  333. #endif
  334. }
  335. GH_INLINE U8 GH_SPI2_get_CTRLR0_DFS(void)
  336. {
  337. GH_SPI2_CTRLR0_S tmp_value;
  338. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  339. tmp_value.all = value;
  340. #if GH_SPI2_ENABLE_DEBUG_PRINT
  341. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_DFS] --> 0x%08x\n",
  342. REG_SPI2_CTRLR0,value);
  343. #endif
  344. return tmp_value.bitc.dfs;
  345. }
  346. GH_INLINE void GH_SPI2_set_CTRLR0_FRF(U8 data)
  347. {
  348. GH_SPI2_CTRLR0_S d;
  349. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  350. d.bitc.frf = data;
  351. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  352. #if GH_SPI2_ENABLE_DEBUG_PRINT
  353. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_FRF] <-- 0x%08x\n",
  354. REG_SPI2_CTRLR0,d.all,d.all);
  355. #endif
  356. }
  357. GH_INLINE U8 GH_SPI2_get_CTRLR0_FRF(void)
  358. {
  359. GH_SPI2_CTRLR0_S tmp_value;
  360. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  361. tmp_value.all = value;
  362. #if GH_SPI2_ENABLE_DEBUG_PRINT
  363. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_FRF] --> 0x%08x\n",
  364. REG_SPI2_CTRLR0,value);
  365. #endif
  366. return tmp_value.bitc.frf;
  367. }
  368. GH_INLINE void GH_SPI2_set_CTRLR0_SCPH(U8 data)
  369. {
  370. GH_SPI2_CTRLR0_S d;
  371. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  372. d.bitc.scph = data;
  373. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  374. #if GH_SPI2_ENABLE_DEBUG_PRINT
  375. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_SCPH] <-- 0x%08x\n",
  376. REG_SPI2_CTRLR0,d.all,d.all);
  377. #endif
  378. }
  379. GH_INLINE U8 GH_SPI2_get_CTRLR0_SCPH(void)
  380. {
  381. GH_SPI2_CTRLR0_S tmp_value;
  382. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  383. tmp_value.all = value;
  384. #if GH_SPI2_ENABLE_DEBUG_PRINT
  385. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_SCPH] --> 0x%08x\n",
  386. REG_SPI2_CTRLR0,value);
  387. #endif
  388. return tmp_value.bitc.scph;
  389. }
  390. GH_INLINE void GH_SPI2_set_CTRLR0_SCPOL(U8 data)
  391. {
  392. GH_SPI2_CTRLR0_S d;
  393. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  394. d.bitc.scpol = data;
  395. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  396. #if GH_SPI2_ENABLE_DEBUG_PRINT
  397. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_SCPOL] <-- 0x%08x\n",
  398. REG_SPI2_CTRLR0,d.all,d.all);
  399. #endif
  400. }
  401. GH_INLINE U8 GH_SPI2_get_CTRLR0_SCPOL(void)
  402. {
  403. GH_SPI2_CTRLR0_S tmp_value;
  404. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  405. tmp_value.all = value;
  406. #if GH_SPI2_ENABLE_DEBUG_PRINT
  407. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_SCPOL] --> 0x%08x\n",
  408. REG_SPI2_CTRLR0,value);
  409. #endif
  410. return tmp_value.bitc.scpol;
  411. }
  412. GH_INLINE void GH_SPI2_set_CTRLR0_TMOD(U8 data)
  413. {
  414. GH_SPI2_CTRLR0_S d;
  415. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  416. d.bitc.tmod = data;
  417. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  418. #if GH_SPI2_ENABLE_DEBUG_PRINT
  419. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_TMOD] <-- 0x%08x\n",
  420. REG_SPI2_CTRLR0,d.all,d.all);
  421. #endif
  422. }
  423. GH_INLINE U8 GH_SPI2_get_CTRLR0_TMOD(void)
  424. {
  425. GH_SPI2_CTRLR0_S tmp_value;
  426. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  427. tmp_value.all = value;
  428. #if GH_SPI2_ENABLE_DEBUG_PRINT
  429. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_TMOD] --> 0x%08x\n",
  430. REG_SPI2_CTRLR0,value);
  431. #endif
  432. return tmp_value.bitc.tmod;
  433. }
  434. GH_INLINE void GH_SPI2_set_CTRLR0_SLV_OE(U8 data)
  435. {
  436. GH_SPI2_CTRLR0_S d;
  437. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  438. d.bitc.slv_oe = data;
  439. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  440. #if GH_SPI2_ENABLE_DEBUG_PRINT
  441. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_SLV_OE] <-- 0x%08x\n",
  442. REG_SPI2_CTRLR0,d.all,d.all);
  443. #endif
  444. }
  445. GH_INLINE U8 GH_SPI2_get_CTRLR0_SLV_OE(void)
  446. {
  447. GH_SPI2_CTRLR0_S tmp_value;
  448. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  449. tmp_value.all = value;
  450. #if GH_SPI2_ENABLE_DEBUG_PRINT
  451. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_SLV_OE] --> 0x%08x\n",
  452. REG_SPI2_CTRLR0,value);
  453. #endif
  454. return tmp_value.bitc.slv_oe;
  455. }
  456. GH_INLINE void GH_SPI2_set_CTRLR0_SRL(U8 data)
  457. {
  458. GH_SPI2_CTRLR0_S d;
  459. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  460. d.bitc.srl = data;
  461. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  462. #if GH_SPI2_ENABLE_DEBUG_PRINT
  463. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_SRL] <-- 0x%08x\n",
  464. REG_SPI2_CTRLR0,d.all,d.all);
  465. #endif
  466. }
  467. GH_INLINE U8 GH_SPI2_get_CTRLR0_SRL(void)
  468. {
  469. GH_SPI2_CTRLR0_S tmp_value;
  470. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  471. tmp_value.all = value;
  472. #if GH_SPI2_ENABLE_DEBUG_PRINT
  473. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_SRL] --> 0x%08x\n",
  474. REG_SPI2_CTRLR0,value);
  475. #endif
  476. return tmp_value.bitc.srl;
  477. }
  478. GH_INLINE void GH_SPI2_set_CTRLR0_CFS(U8 data)
  479. {
  480. GH_SPI2_CTRLR0_S d;
  481. d.all = *(volatile U32 *)REG_SPI2_CTRLR0;
  482. d.bitc.cfs = data;
  483. *(volatile U32 *)REG_SPI2_CTRLR0 = d.all;
  484. #if GH_SPI2_ENABLE_DEBUG_PRINT
  485. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR0_CFS] <-- 0x%08x\n",
  486. REG_SPI2_CTRLR0,d.all,d.all);
  487. #endif
  488. }
  489. GH_INLINE U8 GH_SPI2_get_CTRLR0_CFS(void)
  490. {
  491. GH_SPI2_CTRLR0_S tmp_value;
  492. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR0);
  493. tmp_value.all = value;
  494. #if GH_SPI2_ENABLE_DEBUG_PRINT
  495. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR0_CFS] --> 0x%08x\n",
  496. REG_SPI2_CTRLR0,value);
  497. #endif
  498. return tmp_value.bitc.cfs;
  499. }
  500. #endif /* GH_INLINE_LEVEL == 0 */
  501. /*----------------------------------------------------------------------------*/
  502. /* register SPI2_CTRLR1 (read/write) */
  503. /*----------------------------------------------------------------------------*/
  504. #if GH_INLINE_LEVEL == 0
  505. /*! \brief Writes the register 'SPI2_CTRLR1'. */
  506. void GH_SPI2_set_CTRLR1(U32 data);
  507. /*! \brief Reads the register 'SPI2_CTRLR1'. */
  508. U32 GH_SPI2_get_CTRLR1(void);
  509. /*! \brief Writes the bit group 'NDF' of register 'SPI2_CTRLR1'. */
  510. void GH_SPI2_set_CTRLR1_NDF(U16 data);
  511. /*! \brief Reads the bit group 'NDF' of register 'SPI2_CTRLR1'. */
  512. U16 GH_SPI2_get_CTRLR1_NDF(void);
  513. #else /* GH_INLINE_LEVEL == 0 */
  514. GH_INLINE void GH_SPI2_set_CTRLR1(U32 data)
  515. {
  516. *(volatile U32 *)REG_SPI2_CTRLR1 = data;
  517. #if GH_SPI2_ENABLE_DEBUG_PRINT
  518. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR1] <-- 0x%08x\n",
  519. REG_SPI2_CTRLR1,data,data);
  520. #endif
  521. }
  522. GH_INLINE U32 GH_SPI2_get_CTRLR1(void)
  523. {
  524. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR1);
  525. #if GH_SPI2_ENABLE_DEBUG_PRINT
  526. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR1] --> 0x%08x\n",
  527. REG_SPI2_CTRLR1,value);
  528. #endif
  529. return value;
  530. }
  531. GH_INLINE void GH_SPI2_set_CTRLR1_NDF(U16 data)
  532. {
  533. GH_SPI2_CTRLR1_S d;
  534. d.all = *(volatile U32 *)REG_SPI2_CTRLR1;
  535. d.bitc.ndf = data;
  536. *(volatile U32 *)REG_SPI2_CTRLR1 = d.all;
  537. #if GH_SPI2_ENABLE_DEBUG_PRINT
  538. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_CTRLR1_NDF] <-- 0x%08x\n",
  539. REG_SPI2_CTRLR1,d.all,d.all);
  540. #endif
  541. }
  542. GH_INLINE U16 GH_SPI2_get_CTRLR1_NDF(void)
  543. {
  544. GH_SPI2_CTRLR1_S tmp_value;
  545. U32 value = (*(volatile U32 *)REG_SPI2_CTRLR1);
  546. tmp_value.all = value;
  547. #if GH_SPI2_ENABLE_DEBUG_PRINT
  548. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_CTRLR1_NDF] --> 0x%08x\n",
  549. REG_SPI2_CTRLR1,value);
  550. #endif
  551. return tmp_value.bitc.ndf;
  552. }
  553. #endif /* GH_INLINE_LEVEL == 0 */
  554. /*----------------------------------------------------------------------------*/
  555. /* register SPI2_SSIENR (read/write) */
  556. /*----------------------------------------------------------------------------*/
  557. #if GH_INLINE_LEVEL == 0
  558. /*! \brief Writes the register 'SPI2_SSIENR'. */
  559. void GH_SPI2_set_SSIENR(U32 data);
  560. /*! \brief Reads the register 'SPI2_SSIENR'. */
  561. U32 GH_SPI2_get_SSIENR(void);
  562. /*! \brief Writes the bit group 'ssi_enb' of register 'SPI2_SSIENR'. */
  563. void GH_SPI2_set_SSIENR_ssi_enb(U8 data);
  564. /*! \brief Reads the bit group 'ssi_enb' of register 'SPI2_SSIENR'. */
  565. U8 GH_SPI2_get_SSIENR_ssi_enb(void);
  566. #else /* GH_INLINE_LEVEL == 0 */
  567. GH_INLINE void GH_SPI2_set_SSIENR(U32 data)
  568. {
  569. *(volatile U32 *)REG_SPI2_SSIENR = data;
  570. #if GH_SPI2_ENABLE_DEBUG_PRINT
  571. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_SSIENR] <-- 0x%08x\n",
  572. REG_SPI2_SSIENR,data,data);
  573. #endif
  574. }
  575. GH_INLINE U32 GH_SPI2_get_SSIENR(void)
  576. {
  577. U32 value = (*(volatile U32 *)REG_SPI2_SSIENR);
  578. #if GH_SPI2_ENABLE_DEBUG_PRINT
  579. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SSIENR] --> 0x%08x\n",
  580. REG_SPI2_SSIENR,value);
  581. #endif
  582. return value;
  583. }
  584. GH_INLINE void GH_SPI2_set_SSIENR_ssi_enb(U8 data)
  585. {
  586. GH_SPI2_SSIENR_S d;
  587. d.all = *(volatile U32 *)REG_SPI2_SSIENR;
  588. d.bitc.ssi_enb = data;
  589. *(volatile U32 *)REG_SPI2_SSIENR = d.all;
  590. #if GH_SPI2_ENABLE_DEBUG_PRINT
  591. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_SSIENR_ssi_enb] <-- 0x%08x\n",
  592. REG_SPI2_SSIENR,d.all,d.all);
  593. #endif
  594. }
  595. GH_INLINE U8 GH_SPI2_get_SSIENR_ssi_enb(void)
  596. {
  597. GH_SPI2_SSIENR_S tmp_value;
  598. U32 value = (*(volatile U32 *)REG_SPI2_SSIENR);
  599. tmp_value.all = value;
  600. #if GH_SPI2_ENABLE_DEBUG_PRINT
  601. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SSIENR_ssi_enb] --> 0x%08x\n",
  602. REG_SPI2_SSIENR,value);
  603. #endif
  604. return tmp_value.bitc.ssi_enb;
  605. }
  606. #endif /* GH_INLINE_LEVEL == 0 */
  607. /*----------------------------------------------------------------------------*/
  608. /* register SPI2_SER (read/write) */
  609. /*----------------------------------------------------------------------------*/
  610. #if GH_INLINE_LEVEL == 0
  611. /*! \brief Writes the register 'SPI2_SER'. */
  612. void GH_SPI2_set_SER(U32 data);
  613. /*! \brief Reads the register 'SPI2_SER'. */
  614. U32 GH_SPI2_get_SER(void);
  615. /*! \brief Writes the bit group 'SER_L' of register 'SPI2_SER'. */
  616. void GH_SPI2_set_SER_SER_L(U8 data);
  617. /*! \brief Reads the bit group 'SER_L' of register 'SPI2_SER'. */
  618. U8 GH_SPI2_get_SER_SER_L(void);
  619. /*! \brief Writes the bit group 'SER_H' of register 'SPI2_SER'. */
  620. void GH_SPI2_set_SER_SER_H(U8 data);
  621. /*! \brief Reads the bit group 'SER_H' of register 'SPI2_SER'. */
  622. U8 GH_SPI2_get_SER_SER_H(void);
  623. #else /* GH_INLINE_LEVEL == 0 */
  624. GH_INLINE void GH_SPI2_set_SER(U32 data)
  625. {
  626. *(volatile U32 *)REG_SPI2_SER = data;
  627. #if GH_SPI2_ENABLE_DEBUG_PRINT
  628. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_SER] <-- 0x%08x\n",
  629. REG_SPI2_SER,data,data);
  630. #endif
  631. }
  632. GH_INLINE U32 GH_SPI2_get_SER(void)
  633. {
  634. U32 value = (*(volatile U32 *)REG_SPI2_SER);
  635. #if GH_SPI2_ENABLE_DEBUG_PRINT
  636. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SER] --> 0x%08x\n",
  637. REG_SPI2_SER,value);
  638. #endif
  639. return value;
  640. }
  641. GH_INLINE void GH_SPI2_set_SER_SER_L(U8 data)
  642. {
  643. GH_SPI2_SER_S d;
  644. d.all = *(volatile U32 *)REG_SPI2_SER;
  645. d.bitc.ser_l = data;
  646. *(volatile U32 *)REG_SPI2_SER = d.all;
  647. #if GH_SPI2_ENABLE_DEBUG_PRINT
  648. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_SER_SER_L] <-- 0x%08x\n",
  649. REG_SPI2_SER,d.all,d.all);
  650. #endif
  651. }
  652. GH_INLINE U8 GH_SPI2_get_SER_SER_L(void)
  653. {
  654. GH_SPI2_SER_S tmp_value;
  655. U32 value = (*(volatile U32 *)REG_SPI2_SER);
  656. tmp_value.all = value;
  657. #if GH_SPI2_ENABLE_DEBUG_PRINT
  658. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SER_SER_L] --> 0x%08x\n",
  659. REG_SPI2_SER,value);
  660. #endif
  661. return tmp_value.bitc.ser_l;
  662. }
  663. GH_INLINE void GH_SPI2_set_SER_SER_H(U8 data)
  664. {
  665. GH_SPI2_SER_S d;
  666. d.all = *(volatile U32 *)REG_SPI2_SER;
  667. d.bitc.ser_h = data;
  668. *(volatile U32 *)REG_SPI2_SER = d.all;
  669. #if GH_SPI2_ENABLE_DEBUG_PRINT
  670. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_SER_SER_H] <-- 0x%08x\n",
  671. REG_SPI2_SER,d.all,d.all);
  672. #endif
  673. }
  674. GH_INLINE U8 GH_SPI2_get_SER_SER_H(void)
  675. {
  676. GH_SPI2_SER_S tmp_value;
  677. U32 value = (*(volatile U32 *)REG_SPI2_SER);
  678. tmp_value.all = value;
  679. #if GH_SPI2_ENABLE_DEBUG_PRINT
  680. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SER_SER_H] --> 0x%08x\n",
  681. REG_SPI2_SER,value);
  682. #endif
  683. return tmp_value.bitc.ser_h;
  684. }
  685. #endif /* GH_INLINE_LEVEL == 0 */
  686. /*----------------------------------------------------------------------------*/
  687. /* register SPI2_BAUDR (read/write) */
  688. /*----------------------------------------------------------------------------*/
  689. #if GH_INLINE_LEVEL == 0
  690. /*! \brief Writes the register 'SPI2_BAUDR'. */
  691. void GH_SPI2_set_BAUDR(U32 data);
  692. /*! \brief Reads the register 'SPI2_BAUDR'. */
  693. U32 GH_SPI2_get_BAUDR(void);
  694. /*! \brief Writes the bit group 'SCKDV' of register 'SPI2_BAUDR'. */
  695. void GH_SPI2_set_BAUDR_SCKDV(U16 data);
  696. /*! \brief Reads the bit group 'SCKDV' of register 'SPI2_BAUDR'. */
  697. U16 GH_SPI2_get_BAUDR_SCKDV(void);
  698. #else /* GH_INLINE_LEVEL == 0 */
  699. GH_INLINE void GH_SPI2_set_BAUDR(U32 data)
  700. {
  701. *(volatile U32 *)REG_SPI2_BAUDR = data;
  702. #if GH_SPI2_ENABLE_DEBUG_PRINT
  703. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_BAUDR] <-- 0x%08x\n",
  704. REG_SPI2_BAUDR,data,data);
  705. #endif
  706. }
  707. GH_INLINE U32 GH_SPI2_get_BAUDR(void)
  708. {
  709. U32 value = (*(volatile U32 *)REG_SPI2_BAUDR);
  710. #if GH_SPI2_ENABLE_DEBUG_PRINT
  711. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_BAUDR] --> 0x%08x\n",
  712. REG_SPI2_BAUDR,value);
  713. #endif
  714. return value;
  715. }
  716. GH_INLINE void GH_SPI2_set_BAUDR_SCKDV(U16 data)
  717. {
  718. GH_SPI2_BAUDR_S d;
  719. d.all = *(volatile U32 *)REG_SPI2_BAUDR;
  720. d.bitc.sckdv = data;
  721. *(volatile U32 *)REG_SPI2_BAUDR = d.all;
  722. #if GH_SPI2_ENABLE_DEBUG_PRINT
  723. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_BAUDR_SCKDV] <-- 0x%08x\n",
  724. REG_SPI2_BAUDR,d.all,d.all);
  725. #endif
  726. }
  727. GH_INLINE U16 GH_SPI2_get_BAUDR_SCKDV(void)
  728. {
  729. GH_SPI2_BAUDR_S tmp_value;
  730. U32 value = (*(volatile U32 *)REG_SPI2_BAUDR);
  731. tmp_value.all = value;
  732. #if GH_SPI2_ENABLE_DEBUG_PRINT
  733. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_BAUDR_SCKDV] --> 0x%08x\n",
  734. REG_SPI2_BAUDR,value);
  735. #endif
  736. return tmp_value.bitc.sckdv;
  737. }
  738. #endif /* GH_INLINE_LEVEL == 0 */
  739. /*----------------------------------------------------------------------------*/
  740. /* register SPI2_TXFTLR (read/write) */
  741. /*----------------------------------------------------------------------------*/
  742. #if GH_INLINE_LEVEL == 0
  743. /*! \brief Writes the register 'SPI2_TXFTLR'. */
  744. void GH_SPI2_set_TXFTLR(U32 data);
  745. /*! \brief Reads the register 'SPI2_TXFTLR'. */
  746. U32 GH_SPI2_get_TXFTLR(void);
  747. /*! \brief Writes the bit group 'TFT' of register 'SPI2_TXFTLR'. */
  748. void GH_SPI2_set_TXFTLR_TFT(U8 data);
  749. /*! \brief Reads the bit group 'TFT' of register 'SPI2_TXFTLR'. */
  750. U8 GH_SPI2_get_TXFTLR_TFT(void);
  751. #else /* GH_INLINE_LEVEL == 0 */
  752. GH_INLINE void GH_SPI2_set_TXFTLR(U32 data)
  753. {
  754. *(volatile U32 *)REG_SPI2_TXFTLR = data;
  755. #if GH_SPI2_ENABLE_DEBUG_PRINT
  756. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_TXFTLR] <-- 0x%08x\n",
  757. REG_SPI2_TXFTLR,data,data);
  758. #endif
  759. }
  760. GH_INLINE U32 GH_SPI2_get_TXFTLR(void)
  761. {
  762. U32 value = (*(volatile U32 *)REG_SPI2_TXFTLR);
  763. #if GH_SPI2_ENABLE_DEBUG_PRINT
  764. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_TXFTLR] --> 0x%08x\n",
  765. REG_SPI2_TXFTLR,value);
  766. #endif
  767. return value;
  768. }
  769. GH_INLINE void GH_SPI2_set_TXFTLR_TFT(U8 data)
  770. {
  771. GH_SPI2_TXFTLR_S d;
  772. d.all = *(volatile U32 *)REG_SPI2_TXFTLR;
  773. d.bitc.tft = data;
  774. *(volatile U32 *)REG_SPI2_TXFTLR = d.all;
  775. #if GH_SPI2_ENABLE_DEBUG_PRINT
  776. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_TXFTLR_TFT] <-- 0x%08x\n",
  777. REG_SPI2_TXFTLR,d.all,d.all);
  778. #endif
  779. }
  780. GH_INLINE U8 GH_SPI2_get_TXFTLR_TFT(void)
  781. {
  782. GH_SPI2_TXFTLR_S tmp_value;
  783. U32 value = (*(volatile U32 *)REG_SPI2_TXFTLR);
  784. tmp_value.all = value;
  785. #if GH_SPI2_ENABLE_DEBUG_PRINT
  786. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_TXFTLR_TFT] --> 0x%08x\n",
  787. REG_SPI2_TXFTLR,value);
  788. #endif
  789. return tmp_value.bitc.tft;
  790. }
  791. #endif /* GH_INLINE_LEVEL == 0 */
  792. /*----------------------------------------------------------------------------*/
  793. /* register SPI2_RXFTLR (read/write) */
  794. /*----------------------------------------------------------------------------*/
  795. #if GH_INLINE_LEVEL == 0
  796. /*! \brief Writes the register 'SPI2_RXFTLR'. */
  797. void GH_SPI2_set_RXFTLR(U32 data);
  798. /*! \brief Reads the register 'SPI2_RXFTLR'. */
  799. U32 GH_SPI2_get_RXFTLR(void);
  800. /*! \brief Writes the bit group 'RFT' of register 'SPI2_RXFTLR'. */
  801. void GH_SPI2_set_RXFTLR_RFT(U8 data);
  802. /*! \brief Reads the bit group 'RFT' of register 'SPI2_RXFTLR'. */
  803. U8 GH_SPI2_get_RXFTLR_RFT(void);
  804. #else /* GH_INLINE_LEVEL == 0 */
  805. GH_INLINE void GH_SPI2_set_RXFTLR(U32 data)
  806. {
  807. *(volatile U32 *)REG_SPI2_RXFTLR = data;
  808. #if GH_SPI2_ENABLE_DEBUG_PRINT
  809. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_RXFTLR] <-- 0x%08x\n",
  810. REG_SPI2_RXFTLR,data,data);
  811. #endif
  812. }
  813. GH_INLINE U32 GH_SPI2_get_RXFTLR(void)
  814. {
  815. U32 value = (*(volatile U32 *)REG_SPI2_RXFTLR);
  816. #if GH_SPI2_ENABLE_DEBUG_PRINT
  817. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXFTLR] --> 0x%08x\n",
  818. REG_SPI2_RXFTLR,value);
  819. #endif
  820. return value;
  821. }
  822. GH_INLINE void GH_SPI2_set_RXFTLR_RFT(U8 data)
  823. {
  824. GH_SPI2_RXFTLR_S d;
  825. d.all = *(volatile U32 *)REG_SPI2_RXFTLR;
  826. d.bitc.rft = data;
  827. *(volatile U32 *)REG_SPI2_RXFTLR = d.all;
  828. #if GH_SPI2_ENABLE_DEBUG_PRINT
  829. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_RXFTLR_RFT] <-- 0x%08x\n",
  830. REG_SPI2_RXFTLR,d.all,d.all);
  831. #endif
  832. }
  833. GH_INLINE U8 GH_SPI2_get_RXFTLR_RFT(void)
  834. {
  835. GH_SPI2_RXFTLR_S tmp_value;
  836. U32 value = (*(volatile U32 *)REG_SPI2_RXFTLR);
  837. tmp_value.all = value;
  838. #if GH_SPI2_ENABLE_DEBUG_PRINT
  839. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXFTLR_RFT] --> 0x%08x\n",
  840. REG_SPI2_RXFTLR,value);
  841. #endif
  842. return tmp_value.bitc.rft;
  843. }
  844. #endif /* GH_INLINE_LEVEL == 0 */
  845. /*----------------------------------------------------------------------------*/
  846. /* register SPI2_TXFLR (read/write) */
  847. /*----------------------------------------------------------------------------*/
  848. #if GH_INLINE_LEVEL == 0
  849. /*! \brief Writes the register 'SPI2_TXFLR'. */
  850. void GH_SPI2_set_TXFLR(U32 data);
  851. /*! \brief Reads the register 'SPI2_TXFLR'. */
  852. U32 GH_SPI2_get_TXFLR(void);
  853. /*! \brief Writes the bit group 'TXTFL' of register 'SPI2_TXFLR'. */
  854. void GH_SPI2_set_TXFLR_TXTFL(U8 data);
  855. /*! \brief Reads the bit group 'TXTFL' of register 'SPI2_TXFLR'. */
  856. U8 GH_SPI2_get_TXFLR_TXTFL(void);
  857. #else /* GH_INLINE_LEVEL == 0 */
  858. GH_INLINE void GH_SPI2_set_TXFLR(U32 data)
  859. {
  860. *(volatile U32 *)REG_SPI2_TXFLR = data;
  861. #if GH_SPI2_ENABLE_DEBUG_PRINT
  862. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_TXFLR] <-- 0x%08x\n",
  863. REG_SPI2_TXFLR,data,data);
  864. #endif
  865. }
  866. GH_INLINE U32 GH_SPI2_get_TXFLR(void)
  867. {
  868. U32 value = (*(volatile U32 *)REG_SPI2_TXFLR);
  869. #if GH_SPI2_ENABLE_DEBUG_PRINT
  870. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_TXFLR] --> 0x%08x\n",
  871. REG_SPI2_TXFLR,value);
  872. #endif
  873. return value;
  874. }
  875. GH_INLINE void GH_SPI2_set_TXFLR_TXTFL(U8 data)
  876. {
  877. GH_SPI2_TXFLR_S d;
  878. d.all = *(volatile U32 *)REG_SPI2_TXFLR;
  879. d.bitc.txtfl = data;
  880. *(volatile U32 *)REG_SPI2_TXFLR = d.all;
  881. #if GH_SPI2_ENABLE_DEBUG_PRINT
  882. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_TXFLR_TXTFL] <-- 0x%08x\n",
  883. REG_SPI2_TXFLR,d.all,d.all);
  884. #endif
  885. }
  886. GH_INLINE U8 GH_SPI2_get_TXFLR_TXTFL(void)
  887. {
  888. GH_SPI2_TXFLR_S tmp_value;
  889. U32 value = (*(volatile U32 *)REG_SPI2_TXFLR);
  890. tmp_value.all = value;
  891. #if GH_SPI2_ENABLE_DEBUG_PRINT
  892. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_TXFLR_TXTFL] --> 0x%08x\n",
  893. REG_SPI2_TXFLR,value);
  894. #endif
  895. return tmp_value.bitc.txtfl;
  896. }
  897. #endif /* GH_INLINE_LEVEL == 0 */
  898. /*----------------------------------------------------------------------------*/
  899. /* register SPI2_RXFLR (read/write) */
  900. /*----------------------------------------------------------------------------*/
  901. #if GH_INLINE_LEVEL == 0
  902. /*! \brief Writes the register 'SPI2_RXFLR'. */
  903. void GH_SPI2_set_RXFLR(U32 data);
  904. /*! \brief Reads the register 'SPI2_RXFLR'. */
  905. U32 GH_SPI2_get_RXFLR(void);
  906. /*! \brief Writes the bit group 'RXTFL' of register 'SPI2_RXFLR'. */
  907. void GH_SPI2_set_RXFLR_RXTFL(U8 data);
  908. /*! \brief Reads the bit group 'RXTFL' of register 'SPI2_RXFLR'. */
  909. U8 GH_SPI2_get_RXFLR_RXTFL(void);
  910. #else /* GH_INLINE_LEVEL == 0 */
  911. GH_INLINE void GH_SPI2_set_RXFLR(U32 data)
  912. {
  913. *(volatile U32 *)REG_SPI2_RXFLR = data;
  914. #if GH_SPI2_ENABLE_DEBUG_PRINT
  915. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_RXFLR] <-- 0x%08x\n",
  916. REG_SPI2_RXFLR,data,data);
  917. #endif
  918. }
  919. GH_INLINE U32 GH_SPI2_get_RXFLR(void)
  920. {
  921. U32 value = (*(volatile U32 *)REG_SPI2_RXFLR);
  922. #if GH_SPI2_ENABLE_DEBUG_PRINT
  923. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXFLR] --> 0x%08x\n",
  924. REG_SPI2_RXFLR,value);
  925. #endif
  926. return value;
  927. }
  928. GH_INLINE void GH_SPI2_set_RXFLR_RXTFL(U8 data)
  929. {
  930. GH_SPI2_RXFLR_S d;
  931. d.all = *(volatile U32 *)REG_SPI2_RXFLR;
  932. d.bitc.rxtfl = data;
  933. *(volatile U32 *)REG_SPI2_RXFLR = d.all;
  934. #if GH_SPI2_ENABLE_DEBUG_PRINT
  935. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_RXFLR_RXTFL] <-- 0x%08x\n",
  936. REG_SPI2_RXFLR,d.all,d.all);
  937. #endif
  938. }
  939. GH_INLINE U8 GH_SPI2_get_RXFLR_RXTFL(void)
  940. {
  941. GH_SPI2_RXFLR_S tmp_value;
  942. U32 value = (*(volatile U32 *)REG_SPI2_RXFLR);
  943. tmp_value.all = value;
  944. #if GH_SPI2_ENABLE_DEBUG_PRINT
  945. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXFLR_RXTFL] --> 0x%08x\n",
  946. REG_SPI2_RXFLR,value);
  947. #endif
  948. return tmp_value.bitc.rxtfl;
  949. }
  950. #endif /* GH_INLINE_LEVEL == 0 */
  951. /*----------------------------------------------------------------------------*/
  952. /* register SPI2_SR (read) */
  953. /*----------------------------------------------------------------------------*/
  954. #if GH_INLINE_LEVEL == 0
  955. /*! \brief Reads the register 'SPI2_SR'. */
  956. U32 GH_SPI2_get_SR(void);
  957. /*! \brief Reads the bit group 'BUSY' of register 'SPI2_SR'. */
  958. U8 GH_SPI2_get_SR_BUSY(void);
  959. /*! \brief Reads the bit group 'TFNF' of register 'SPI2_SR'. */
  960. U8 GH_SPI2_get_SR_TFNF(void);
  961. /*! \brief Reads the bit group 'TFE' of register 'SPI2_SR'. */
  962. U8 GH_SPI2_get_SR_TFE(void);
  963. /*! \brief Reads the bit group 'RFNE' of register 'SPI2_SR'. */
  964. U8 GH_SPI2_get_SR_RFNE(void);
  965. /*! \brief Reads the bit group 'RFF' of register 'SPI2_SR'. */
  966. U8 GH_SPI2_get_SR_RFF(void);
  967. /*! \brief Reads the bit group 'TXE' of register 'SPI2_SR'. */
  968. U8 GH_SPI2_get_SR_TXE(void);
  969. /*! \brief Reads the bit group 'DCOL' of register 'SPI2_SR'. */
  970. U8 GH_SPI2_get_SR_DCOL(void);
  971. #else /* GH_INLINE_LEVEL == 0 */
  972. GH_INLINE U32 GH_SPI2_get_SR(void)
  973. {
  974. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  975. #if GH_SPI2_ENABLE_DEBUG_PRINT
  976. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR] --> 0x%08x\n",
  977. REG_SPI2_SR,value);
  978. #endif
  979. return value;
  980. }
  981. GH_INLINE U8 GH_SPI2_get_SR_BUSY(void)
  982. {
  983. GH_SPI2_SR_S tmp_value;
  984. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  985. tmp_value.all = value;
  986. #if GH_SPI2_ENABLE_DEBUG_PRINT
  987. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR_BUSY] --> 0x%08x\n",
  988. REG_SPI2_SR,value);
  989. #endif
  990. return tmp_value.bitc.busy;
  991. }
  992. GH_INLINE U8 GH_SPI2_get_SR_TFNF(void)
  993. {
  994. GH_SPI2_SR_S tmp_value;
  995. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  996. tmp_value.all = value;
  997. #if GH_SPI2_ENABLE_DEBUG_PRINT
  998. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR_TFNF] --> 0x%08x\n",
  999. REG_SPI2_SR,value);
  1000. #endif
  1001. return tmp_value.bitc.tfnf;
  1002. }
  1003. GH_INLINE U8 GH_SPI2_get_SR_TFE(void)
  1004. {
  1005. GH_SPI2_SR_S tmp_value;
  1006. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  1007. tmp_value.all = value;
  1008. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1009. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR_TFE] --> 0x%08x\n",
  1010. REG_SPI2_SR,value);
  1011. #endif
  1012. return tmp_value.bitc.tfe;
  1013. }
  1014. GH_INLINE U8 GH_SPI2_get_SR_RFNE(void)
  1015. {
  1016. GH_SPI2_SR_S tmp_value;
  1017. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  1018. tmp_value.all = value;
  1019. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1020. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR_RFNE] --> 0x%08x\n",
  1021. REG_SPI2_SR,value);
  1022. #endif
  1023. return tmp_value.bitc.rfne;
  1024. }
  1025. GH_INLINE U8 GH_SPI2_get_SR_RFF(void)
  1026. {
  1027. GH_SPI2_SR_S tmp_value;
  1028. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  1029. tmp_value.all = value;
  1030. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1031. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR_RFF] --> 0x%08x\n",
  1032. REG_SPI2_SR,value);
  1033. #endif
  1034. return tmp_value.bitc.rff;
  1035. }
  1036. GH_INLINE U8 GH_SPI2_get_SR_TXE(void)
  1037. {
  1038. GH_SPI2_SR_S tmp_value;
  1039. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  1040. tmp_value.all = value;
  1041. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1042. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR_TXE] --> 0x%08x\n",
  1043. REG_SPI2_SR,value);
  1044. #endif
  1045. return tmp_value.bitc.txe;
  1046. }
  1047. GH_INLINE U8 GH_SPI2_get_SR_DCOL(void)
  1048. {
  1049. GH_SPI2_SR_S tmp_value;
  1050. U32 value = (*(volatile U32 *)REG_SPI2_SR);
  1051. tmp_value.all = value;
  1052. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1053. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_SR_DCOL] --> 0x%08x\n",
  1054. REG_SPI2_SR,value);
  1055. #endif
  1056. return tmp_value.bitc.dcol;
  1057. }
  1058. #endif /* GH_INLINE_LEVEL == 0 */
  1059. /*----------------------------------------------------------------------------*/
  1060. /* register SPI2_IMR (read/write) */
  1061. /*----------------------------------------------------------------------------*/
  1062. #if GH_INLINE_LEVEL == 0
  1063. /*! \brief Writes the register 'SPI2_IMR'. */
  1064. void GH_SPI2_set_IMR(U32 data);
  1065. /*! \brief Reads the register 'SPI2_IMR'. */
  1066. U32 GH_SPI2_get_IMR(void);
  1067. /*! \brief Writes the bit group 'TXEIM' of register 'SPI2_IMR'. */
  1068. void GH_SPI2_set_IMR_TXEIM(U8 data);
  1069. /*! \brief Reads the bit group 'TXEIM' of register 'SPI2_IMR'. */
  1070. U8 GH_SPI2_get_IMR_TXEIM(void);
  1071. /*! \brief Writes the bit group 'TXOIM' of register 'SPI2_IMR'. */
  1072. void GH_SPI2_set_IMR_TXOIM(U8 data);
  1073. /*! \brief Reads the bit group 'TXOIM' of register 'SPI2_IMR'. */
  1074. U8 GH_SPI2_get_IMR_TXOIM(void);
  1075. /*! \brief Writes the bit group 'RXUIM' of register 'SPI2_IMR'. */
  1076. void GH_SPI2_set_IMR_RXUIM(U8 data);
  1077. /*! \brief Reads the bit group 'RXUIM' of register 'SPI2_IMR'. */
  1078. U8 GH_SPI2_get_IMR_RXUIM(void);
  1079. /*! \brief Writes the bit group 'RXOIM' of register 'SPI2_IMR'. */
  1080. void GH_SPI2_set_IMR_RXOIM(U8 data);
  1081. /*! \brief Reads the bit group 'RXOIM' of register 'SPI2_IMR'. */
  1082. U8 GH_SPI2_get_IMR_RXOIM(void);
  1083. /*! \brief Writes the bit group 'RXFIM' of register 'SPI2_IMR'. */
  1084. void GH_SPI2_set_IMR_RXFIM(U8 data);
  1085. /*! \brief Reads the bit group 'RXFIM' of register 'SPI2_IMR'. */
  1086. U8 GH_SPI2_get_IMR_RXFIM(void);
  1087. /*! \brief Writes the bit group 'MSTIM' of register 'SPI2_IMR'. */
  1088. void GH_SPI2_set_IMR_MSTIM(U8 data);
  1089. /*! \brief Reads the bit group 'MSTIM' of register 'SPI2_IMR'. */
  1090. U8 GH_SPI2_get_IMR_MSTIM(void);
  1091. #else /* GH_INLINE_LEVEL == 0 */
  1092. GH_INLINE void GH_SPI2_set_IMR(U32 data)
  1093. {
  1094. *(volatile U32 *)REG_SPI2_IMR = data;
  1095. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1096. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_IMR] <-- 0x%08x\n",
  1097. REG_SPI2_IMR,data,data);
  1098. #endif
  1099. }
  1100. GH_INLINE U32 GH_SPI2_get_IMR(void)
  1101. {
  1102. U32 value = (*(volatile U32 *)REG_SPI2_IMR);
  1103. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1104. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IMR] --> 0x%08x\n",
  1105. REG_SPI2_IMR,value);
  1106. #endif
  1107. return value;
  1108. }
  1109. GH_INLINE void GH_SPI2_set_IMR_TXEIM(U8 data)
  1110. {
  1111. GH_SPI2_IMR_S d;
  1112. d.all = *(volatile U32 *)REG_SPI2_IMR;
  1113. d.bitc.txeim = data;
  1114. *(volatile U32 *)REG_SPI2_IMR = d.all;
  1115. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1116. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_IMR_TXEIM] <-- 0x%08x\n",
  1117. REG_SPI2_IMR,d.all,d.all);
  1118. #endif
  1119. }
  1120. GH_INLINE U8 GH_SPI2_get_IMR_TXEIM(void)
  1121. {
  1122. GH_SPI2_IMR_S tmp_value;
  1123. U32 value = (*(volatile U32 *)REG_SPI2_IMR);
  1124. tmp_value.all = value;
  1125. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1126. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IMR_TXEIM] --> 0x%08x\n",
  1127. REG_SPI2_IMR,value);
  1128. #endif
  1129. return tmp_value.bitc.txeim;
  1130. }
  1131. GH_INLINE void GH_SPI2_set_IMR_TXOIM(U8 data)
  1132. {
  1133. GH_SPI2_IMR_S d;
  1134. d.all = *(volatile U32 *)REG_SPI2_IMR;
  1135. d.bitc.txoim = data;
  1136. *(volatile U32 *)REG_SPI2_IMR = d.all;
  1137. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1138. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_IMR_TXOIM] <-- 0x%08x\n",
  1139. REG_SPI2_IMR,d.all,d.all);
  1140. #endif
  1141. }
  1142. GH_INLINE U8 GH_SPI2_get_IMR_TXOIM(void)
  1143. {
  1144. GH_SPI2_IMR_S tmp_value;
  1145. U32 value = (*(volatile U32 *)REG_SPI2_IMR);
  1146. tmp_value.all = value;
  1147. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1148. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IMR_TXOIM] --> 0x%08x\n",
  1149. REG_SPI2_IMR,value);
  1150. #endif
  1151. return tmp_value.bitc.txoim;
  1152. }
  1153. GH_INLINE void GH_SPI2_set_IMR_RXUIM(U8 data)
  1154. {
  1155. GH_SPI2_IMR_S d;
  1156. d.all = *(volatile U32 *)REG_SPI2_IMR;
  1157. d.bitc.rxuim = data;
  1158. *(volatile U32 *)REG_SPI2_IMR = d.all;
  1159. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1160. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_IMR_RXUIM] <-- 0x%08x\n",
  1161. REG_SPI2_IMR,d.all,d.all);
  1162. #endif
  1163. }
  1164. GH_INLINE U8 GH_SPI2_get_IMR_RXUIM(void)
  1165. {
  1166. GH_SPI2_IMR_S tmp_value;
  1167. U32 value = (*(volatile U32 *)REG_SPI2_IMR);
  1168. tmp_value.all = value;
  1169. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1170. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IMR_RXUIM] --> 0x%08x\n",
  1171. REG_SPI2_IMR,value);
  1172. #endif
  1173. return tmp_value.bitc.rxuim;
  1174. }
  1175. GH_INLINE void GH_SPI2_set_IMR_RXOIM(U8 data)
  1176. {
  1177. GH_SPI2_IMR_S d;
  1178. d.all = *(volatile U32 *)REG_SPI2_IMR;
  1179. d.bitc.rxoim = data;
  1180. *(volatile U32 *)REG_SPI2_IMR = d.all;
  1181. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1182. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_IMR_RXOIM] <-- 0x%08x\n",
  1183. REG_SPI2_IMR,d.all,d.all);
  1184. #endif
  1185. }
  1186. GH_INLINE U8 GH_SPI2_get_IMR_RXOIM(void)
  1187. {
  1188. GH_SPI2_IMR_S tmp_value;
  1189. U32 value = (*(volatile U32 *)REG_SPI2_IMR);
  1190. tmp_value.all = value;
  1191. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1192. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IMR_RXOIM] --> 0x%08x\n",
  1193. REG_SPI2_IMR,value);
  1194. #endif
  1195. return tmp_value.bitc.rxoim;
  1196. }
  1197. GH_INLINE void GH_SPI2_set_IMR_RXFIM(U8 data)
  1198. {
  1199. GH_SPI2_IMR_S d;
  1200. d.all = *(volatile U32 *)REG_SPI2_IMR;
  1201. d.bitc.rxfim = data;
  1202. *(volatile U32 *)REG_SPI2_IMR = d.all;
  1203. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1204. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_IMR_RXFIM] <-- 0x%08x\n",
  1205. REG_SPI2_IMR,d.all,d.all);
  1206. #endif
  1207. }
  1208. GH_INLINE U8 GH_SPI2_get_IMR_RXFIM(void)
  1209. {
  1210. GH_SPI2_IMR_S tmp_value;
  1211. U32 value = (*(volatile U32 *)REG_SPI2_IMR);
  1212. tmp_value.all = value;
  1213. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1214. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IMR_RXFIM] --> 0x%08x\n",
  1215. REG_SPI2_IMR,value);
  1216. #endif
  1217. return tmp_value.bitc.rxfim;
  1218. }
  1219. GH_INLINE void GH_SPI2_set_IMR_MSTIM(U8 data)
  1220. {
  1221. GH_SPI2_IMR_S d;
  1222. d.all = *(volatile U32 *)REG_SPI2_IMR;
  1223. d.bitc.mstim = data;
  1224. *(volatile U32 *)REG_SPI2_IMR = d.all;
  1225. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1226. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_IMR_MSTIM] <-- 0x%08x\n",
  1227. REG_SPI2_IMR,d.all,d.all);
  1228. #endif
  1229. }
  1230. GH_INLINE U8 GH_SPI2_get_IMR_MSTIM(void)
  1231. {
  1232. GH_SPI2_IMR_S tmp_value;
  1233. U32 value = (*(volatile U32 *)REG_SPI2_IMR);
  1234. tmp_value.all = value;
  1235. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1236. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IMR_MSTIM] --> 0x%08x\n",
  1237. REG_SPI2_IMR,value);
  1238. #endif
  1239. return tmp_value.bitc.mstim;
  1240. }
  1241. #endif /* GH_INLINE_LEVEL == 0 */
  1242. /*----------------------------------------------------------------------------*/
  1243. /* register SPI2_ISR (read) */
  1244. /*----------------------------------------------------------------------------*/
  1245. #if GH_INLINE_LEVEL == 0
  1246. /*! \brief Reads the register 'SPI2_ISR'. */
  1247. U32 GH_SPI2_get_ISR(void);
  1248. /*! \brief Reads the bit group 'TXEIS' of register 'SPI2_ISR'. */
  1249. U8 GH_SPI2_get_ISR_TXEIS(void);
  1250. /*! \brief Reads the bit group 'TXOIS' of register 'SPI2_ISR'. */
  1251. U8 GH_SPI2_get_ISR_TXOIS(void);
  1252. /*! \brief Reads the bit group 'RXUIS' of register 'SPI2_ISR'. */
  1253. U8 GH_SPI2_get_ISR_RXUIS(void);
  1254. /*! \brief Reads the bit group 'RXOIS' of register 'SPI2_ISR'. */
  1255. U8 GH_SPI2_get_ISR_RXOIS(void);
  1256. /*! \brief Reads the bit group 'RXFIS' of register 'SPI2_ISR'. */
  1257. U8 GH_SPI2_get_ISR_RXFIS(void);
  1258. /*! \brief Reads the bit group 'MSTIS' of register 'SPI2_ISR'. */
  1259. U8 GH_SPI2_get_ISR_MSTIS(void);
  1260. #else /* GH_INLINE_LEVEL == 0 */
  1261. GH_INLINE U32 GH_SPI2_get_ISR(void)
  1262. {
  1263. U32 value = (*(volatile U32 *)REG_SPI2_ISR);
  1264. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1265. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ISR] --> 0x%08x\n",
  1266. REG_SPI2_ISR,value);
  1267. #endif
  1268. return value;
  1269. }
  1270. GH_INLINE U8 GH_SPI2_get_ISR_TXEIS(void)
  1271. {
  1272. GH_SPI2_ISR_S tmp_value;
  1273. U32 value = (*(volatile U32 *)REG_SPI2_ISR);
  1274. tmp_value.all = value;
  1275. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1276. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ISR_TXEIS] --> 0x%08x\n",
  1277. REG_SPI2_ISR,value);
  1278. #endif
  1279. return tmp_value.bitc.txeis;
  1280. }
  1281. GH_INLINE U8 GH_SPI2_get_ISR_TXOIS(void)
  1282. {
  1283. GH_SPI2_ISR_S tmp_value;
  1284. U32 value = (*(volatile U32 *)REG_SPI2_ISR);
  1285. tmp_value.all = value;
  1286. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1287. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ISR_TXOIS] --> 0x%08x\n",
  1288. REG_SPI2_ISR,value);
  1289. #endif
  1290. return tmp_value.bitc.txois;
  1291. }
  1292. GH_INLINE U8 GH_SPI2_get_ISR_RXUIS(void)
  1293. {
  1294. GH_SPI2_ISR_S tmp_value;
  1295. U32 value = (*(volatile U32 *)REG_SPI2_ISR);
  1296. tmp_value.all = value;
  1297. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1298. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ISR_RXUIS] --> 0x%08x\n",
  1299. REG_SPI2_ISR,value);
  1300. #endif
  1301. return tmp_value.bitc.rxuis;
  1302. }
  1303. GH_INLINE U8 GH_SPI2_get_ISR_RXOIS(void)
  1304. {
  1305. GH_SPI2_ISR_S tmp_value;
  1306. U32 value = (*(volatile U32 *)REG_SPI2_ISR);
  1307. tmp_value.all = value;
  1308. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1309. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ISR_RXOIS] --> 0x%08x\n",
  1310. REG_SPI2_ISR,value);
  1311. #endif
  1312. return tmp_value.bitc.rxois;
  1313. }
  1314. GH_INLINE U8 GH_SPI2_get_ISR_RXFIS(void)
  1315. {
  1316. GH_SPI2_ISR_S tmp_value;
  1317. U32 value = (*(volatile U32 *)REG_SPI2_ISR);
  1318. tmp_value.all = value;
  1319. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1320. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ISR_RXFIS] --> 0x%08x\n",
  1321. REG_SPI2_ISR,value);
  1322. #endif
  1323. return tmp_value.bitc.rxfis;
  1324. }
  1325. GH_INLINE U8 GH_SPI2_get_ISR_MSTIS(void)
  1326. {
  1327. GH_SPI2_ISR_S tmp_value;
  1328. U32 value = (*(volatile U32 *)REG_SPI2_ISR);
  1329. tmp_value.all = value;
  1330. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1331. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ISR_MSTIS] --> 0x%08x\n",
  1332. REG_SPI2_ISR,value);
  1333. #endif
  1334. return tmp_value.bitc.mstis;
  1335. }
  1336. #endif /* GH_INLINE_LEVEL == 0 */
  1337. /*----------------------------------------------------------------------------*/
  1338. /* register SPI2_RISR (read) */
  1339. /*----------------------------------------------------------------------------*/
  1340. #if GH_INLINE_LEVEL == 0
  1341. /*! \brief Reads the register 'SPI2_RISR'. */
  1342. U32 GH_SPI2_get_RISR(void);
  1343. /*! \brief Reads the bit group 'TXEIR' of register 'SPI2_RISR'. */
  1344. U8 GH_SPI2_get_RISR_TXEIR(void);
  1345. /*! \brief Reads the bit group 'TXOIR' of register 'SPI2_RISR'. */
  1346. U8 GH_SPI2_get_RISR_TXOIR(void);
  1347. /*! \brief Reads the bit group 'RXUIR' of register 'SPI2_RISR'. */
  1348. U8 GH_SPI2_get_RISR_RXUIR(void);
  1349. /*! \brief Reads the bit group 'RXOIR' of register 'SPI2_RISR'. */
  1350. U8 GH_SPI2_get_RISR_RXOIR(void);
  1351. /*! \brief Reads the bit group 'RXFIR' of register 'SPI2_RISR'. */
  1352. U8 GH_SPI2_get_RISR_RXFIR(void);
  1353. /*! \brief Reads the bit group 'MSTIR' of register 'SPI2_RISR'. */
  1354. U8 GH_SPI2_get_RISR_MSTIR(void);
  1355. #else /* GH_INLINE_LEVEL == 0 */
  1356. GH_INLINE U32 GH_SPI2_get_RISR(void)
  1357. {
  1358. U32 value = (*(volatile U32 *)REG_SPI2_RISR);
  1359. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1360. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RISR] --> 0x%08x\n",
  1361. REG_SPI2_RISR,value);
  1362. #endif
  1363. return value;
  1364. }
  1365. GH_INLINE U8 GH_SPI2_get_RISR_TXEIR(void)
  1366. {
  1367. GH_SPI2_RISR_S tmp_value;
  1368. U32 value = (*(volatile U32 *)REG_SPI2_RISR);
  1369. tmp_value.all = value;
  1370. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1371. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RISR_TXEIR] --> 0x%08x\n",
  1372. REG_SPI2_RISR,value);
  1373. #endif
  1374. return tmp_value.bitc.txeir;
  1375. }
  1376. GH_INLINE U8 GH_SPI2_get_RISR_TXOIR(void)
  1377. {
  1378. GH_SPI2_RISR_S tmp_value;
  1379. U32 value = (*(volatile U32 *)REG_SPI2_RISR);
  1380. tmp_value.all = value;
  1381. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1382. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RISR_TXOIR] --> 0x%08x\n",
  1383. REG_SPI2_RISR,value);
  1384. #endif
  1385. return tmp_value.bitc.txoir;
  1386. }
  1387. GH_INLINE U8 GH_SPI2_get_RISR_RXUIR(void)
  1388. {
  1389. GH_SPI2_RISR_S tmp_value;
  1390. U32 value = (*(volatile U32 *)REG_SPI2_RISR);
  1391. tmp_value.all = value;
  1392. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1393. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RISR_RXUIR] --> 0x%08x\n",
  1394. REG_SPI2_RISR,value);
  1395. #endif
  1396. return tmp_value.bitc.rxuir;
  1397. }
  1398. GH_INLINE U8 GH_SPI2_get_RISR_RXOIR(void)
  1399. {
  1400. GH_SPI2_RISR_S tmp_value;
  1401. U32 value = (*(volatile U32 *)REG_SPI2_RISR);
  1402. tmp_value.all = value;
  1403. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1404. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RISR_RXOIR] --> 0x%08x\n",
  1405. REG_SPI2_RISR,value);
  1406. #endif
  1407. return tmp_value.bitc.rxoir;
  1408. }
  1409. GH_INLINE U8 GH_SPI2_get_RISR_RXFIR(void)
  1410. {
  1411. GH_SPI2_RISR_S tmp_value;
  1412. U32 value = (*(volatile U32 *)REG_SPI2_RISR);
  1413. tmp_value.all = value;
  1414. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1415. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RISR_RXFIR] --> 0x%08x\n",
  1416. REG_SPI2_RISR,value);
  1417. #endif
  1418. return tmp_value.bitc.rxfir;
  1419. }
  1420. GH_INLINE U8 GH_SPI2_get_RISR_MSTIR(void)
  1421. {
  1422. GH_SPI2_RISR_S tmp_value;
  1423. U32 value = (*(volatile U32 *)REG_SPI2_RISR);
  1424. tmp_value.all = value;
  1425. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1426. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RISR_MSTIR] --> 0x%08x\n",
  1427. REG_SPI2_RISR,value);
  1428. #endif
  1429. return tmp_value.bitc.mstir;
  1430. }
  1431. #endif /* GH_INLINE_LEVEL == 0 */
  1432. /*----------------------------------------------------------------------------*/
  1433. /* register SPI2_TXOICR (read) */
  1434. /*----------------------------------------------------------------------------*/
  1435. #if GH_INLINE_LEVEL == 0
  1436. /*! \brief Reads the register 'SPI2_TXOICR'. */
  1437. U32 GH_SPI2_get_TXOICR(void);
  1438. /*! \brief Reads the bit group 'TXOICR' of register 'SPI2_TXOICR'. */
  1439. U8 GH_SPI2_get_TXOICR_TXOICR(void);
  1440. #else /* GH_INLINE_LEVEL == 0 */
  1441. GH_INLINE U32 GH_SPI2_get_TXOICR(void)
  1442. {
  1443. U32 value = (*(volatile U32 *)REG_SPI2_TXOICR);
  1444. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1445. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_TXOICR] --> 0x%08x\n",
  1446. REG_SPI2_TXOICR,value);
  1447. #endif
  1448. return value;
  1449. }
  1450. GH_INLINE U8 GH_SPI2_get_TXOICR_TXOICR(void)
  1451. {
  1452. GH_SPI2_TXOICR_S tmp_value;
  1453. U32 value = (*(volatile U32 *)REG_SPI2_TXOICR);
  1454. tmp_value.all = value;
  1455. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1456. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_TXOICR_TXOICR] --> 0x%08x\n",
  1457. REG_SPI2_TXOICR,value);
  1458. #endif
  1459. return tmp_value.bitc.txoicr;
  1460. }
  1461. #endif /* GH_INLINE_LEVEL == 0 */
  1462. /*----------------------------------------------------------------------------*/
  1463. /* register SPI2_RXOICR (read) */
  1464. /*----------------------------------------------------------------------------*/
  1465. #if GH_INLINE_LEVEL == 0
  1466. /*! \brief Reads the register 'SPI2_RXOICR'. */
  1467. U32 GH_SPI2_get_RXOICR(void);
  1468. /*! \brief Reads the bit group 'RXOICR' of register 'SPI2_RXOICR'. */
  1469. U8 GH_SPI2_get_RXOICR_RXOICR(void);
  1470. #else /* GH_INLINE_LEVEL == 0 */
  1471. GH_INLINE U32 GH_SPI2_get_RXOICR(void)
  1472. {
  1473. U32 value = (*(volatile U32 *)REG_SPI2_RXOICR);
  1474. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1475. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXOICR] --> 0x%08x\n",
  1476. REG_SPI2_RXOICR,value);
  1477. #endif
  1478. return value;
  1479. }
  1480. GH_INLINE U8 GH_SPI2_get_RXOICR_RXOICR(void)
  1481. {
  1482. GH_SPI2_RXOICR_S tmp_value;
  1483. U32 value = (*(volatile U32 *)REG_SPI2_RXOICR);
  1484. tmp_value.all = value;
  1485. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1486. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXOICR_RXOICR] --> 0x%08x\n",
  1487. REG_SPI2_RXOICR,value);
  1488. #endif
  1489. return tmp_value.bitc.rxoicr;
  1490. }
  1491. #endif /* GH_INLINE_LEVEL == 0 */
  1492. /*----------------------------------------------------------------------------*/
  1493. /* register SPI2_RXUICR (read) */
  1494. /*----------------------------------------------------------------------------*/
  1495. #if GH_INLINE_LEVEL == 0
  1496. /*! \brief Reads the register 'SPI2_RXUICR'. */
  1497. U32 GH_SPI2_get_RXUICR(void);
  1498. /*! \brief Reads the bit group 'RXUICR' of register 'SPI2_RXUICR'. */
  1499. U8 GH_SPI2_get_RXUICR_RXUICR(void);
  1500. #else /* GH_INLINE_LEVEL == 0 */
  1501. GH_INLINE U32 GH_SPI2_get_RXUICR(void)
  1502. {
  1503. U32 value = (*(volatile U32 *)REG_SPI2_RXUICR);
  1504. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1505. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXUICR] --> 0x%08x\n",
  1506. REG_SPI2_RXUICR,value);
  1507. #endif
  1508. return value;
  1509. }
  1510. GH_INLINE U8 GH_SPI2_get_RXUICR_RXUICR(void)
  1511. {
  1512. GH_SPI2_RXUICR_S tmp_value;
  1513. U32 value = (*(volatile U32 *)REG_SPI2_RXUICR);
  1514. tmp_value.all = value;
  1515. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1516. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_RXUICR_RXUICR] --> 0x%08x\n",
  1517. REG_SPI2_RXUICR,value);
  1518. #endif
  1519. return tmp_value.bitc.rxuicr;
  1520. }
  1521. #endif /* GH_INLINE_LEVEL == 0 */
  1522. /*----------------------------------------------------------------------------*/
  1523. /* register SPI2_MSTICR (read) */
  1524. /*----------------------------------------------------------------------------*/
  1525. #if GH_INLINE_LEVEL == 0
  1526. /*! \brief Reads the register 'SPI2_MSTICR'. */
  1527. U32 GH_SPI2_get_MSTICR(void);
  1528. /*! \brief Reads the bit group 'MSTICR' of register 'SPI2_MSTICR'. */
  1529. U8 GH_SPI2_get_MSTICR_MSTICR(void);
  1530. #else /* GH_INLINE_LEVEL == 0 */
  1531. GH_INLINE U32 GH_SPI2_get_MSTICR(void)
  1532. {
  1533. U32 value = (*(volatile U32 *)REG_SPI2_MSTICR);
  1534. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1535. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_MSTICR] --> 0x%08x\n",
  1536. REG_SPI2_MSTICR,value);
  1537. #endif
  1538. return value;
  1539. }
  1540. GH_INLINE U8 GH_SPI2_get_MSTICR_MSTICR(void)
  1541. {
  1542. GH_SPI2_MSTICR_S tmp_value;
  1543. U32 value = (*(volatile U32 *)REG_SPI2_MSTICR);
  1544. tmp_value.all = value;
  1545. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1546. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_MSTICR_MSTICR] --> 0x%08x\n",
  1547. REG_SPI2_MSTICR,value);
  1548. #endif
  1549. return tmp_value.bitc.msticr;
  1550. }
  1551. #endif /* GH_INLINE_LEVEL == 0 */
  1552. /*----------------------------------------------------------------------------*/
  1553. /* register SPI2_ICR (read) */
  1554. /*----------------------------------------------------------------------------*/
  1555. #if GH_INLINE_LEVEL == 0
  1556. /*! \brief Reads the register 'SPI2_ICR'. */
  1557. U32 GH_SPI2_get_ICR(void);
  1558. /*! \brief Reads the bit group 'ICR' of register 'SPI2_ICR'. */
  1559. U8 GH_SPI2_get_ICR_ICR(void);
  1560. #else /* GH_INLINE_LEVEL == 0 */
  1561. GH_INLINE U32 GH_SPI2_get_ICR(void)
  1562. {
  1563. U32 value = (*(volatile U32 *)REG_SPI2_ICR);
  1564. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1565. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ICR] --> 0x%08x\n",
  1566. REG_SPI2_ICR,value);
  1567. #endif
  1568. return value;
  1569. }
  1570. GH_INLINE U8 GH_SPI2_get_ICR_ICR(void)
  1571. {
  1572. GH_SPI2_ICR_S tmp_value;
  1573. U32 value = (*(volatile U32 *)REG_SPI2_ICR);
  1574. tmp_value.all = value;
  1575. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1576. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_ICR_ICR] --> 0x%08x\n",
  1577. REG_SPI2_ICR,value);
  1578. #endif
  1579. return tmp_value.bitc.icr;
  1580. }
  1581. #endif /* GH_INLINE_LEVEL == 0 */
  1582. /*----------------------------------------------------------------------------*/
  1583. /* register SPI2_IDR (read) */
  1584. /*----------------------------------------------------------------------------*/
  1585. #if GH_INLINE_LEVEL == 0
  1586. /*! \brief Reads the register 'SPI2_IDR'. */
  1587. U32 GH_SPI2_get_IDR(void);
  1588. /*! \brief Reads the bit group 'ID' of register 'SPI2_IDR'. */
  1589. U8 GH_SPI2_get_IDR_ID(void);
  1590. #else /* GH_INLINE_LEVEL == 0 */
  1591. GH_INLINE U32 GH_SPI2_get_IDR(void)
  1592. {
  1593. U32 value = (*(volatile U32 *)REG_SPI2_IDR);
  1594. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1595. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IDR] --> 0x%08x\n",
  1596. REG_SPI2_IDR,value);
  1597. #endif
  1598. return value;
  1599. }
  1600. GH_INLINE U8 GH_SPI2_get_IDR_ID(void)
  1601. {
  1602. GH_SPI2_IDR_S tmp_value;
  1603. U32 value = (*(volatile U32 *)REG_SPI2_IDR);
  1604. tmp_value.all = value;
  1605. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1606. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_IDR_ID] --> 0x%08x\n",
  1607. REG_SPI2_IDR,value);
  1608. #endif
  1609. return tmp_value.bitc.id;
  1610. }
  1611. #endif /* GH_INLINE_LEVEL == 0 */
  1612. /*----------------------------------------------------------------------------*/
  1613. /* register SPI2_DR (read) */
  1614. /*----------------------------------------------------------------------------*/
  1615. #if GH_INLINE_LEVEL == 0
  1616. /*! \brief Reads the register 'SPI2_DR'. */
  1617. U32 GH_SPI2_get_DR(void);
  1618. /*! \brief Reads the bit group 'DR' of register 'SPI2_DR'. */
  1619. U16 GH_SPI2_get_DR_DR(void);
  1620. #else /* GH_INLINE_LEVEL == 0 */
  1621. GH_INLINE U32 GH_SPI2_get_DR(void)
  1622. {
  1623. U32 value = (*(volatile U32 *)REG_SPI2_DR);
  1624. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1625. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_DR] --> 0x%08x\n",
  1626. REG_SPI2_DR,value);
  1627. #endif
  1628. return value;
  1629. }
  1630. GH_INLINE U16 GH_SPI2_get_DR_DR(void)
  1631. {
  1632. GH_SPI2_DR_S tmp_value;
  1633. U32 value = (*(volatile U32 *)REG_SPI2_DR);
  1634. tmp_value.all = value;
  1635. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1636. GH_SPI2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_SPI2_get_DR_DR] --> 0x%08x\n",
  1637. REG_SPI2_DR,value);
  1638. #endif
  1639. return tmp_value.bitc.dr;
  1640. }
  1641. #endif /* GH_INLINE_LEVEL == 0 */
  1642. /*----------------------------------------------------------------------------*/
  1643. /* register SPI2_DW (write) */
  1644. /*----------------------------------------------------------------------------*/
  1645. #if GH_INLINE_LEVEL < 2
  1646. /*! \brief Writes the register 'SPI2_DW'. */
  1647. void GH_SPI2_set_DW(U32 data);
  1648. /*! \brief Reads the mirror variable of the register 'SPI2_DW'. */
  1649. U32 GH_SPI2_getm_DW(void);
  1650. /*! \brief Writes the bit group 'DW' of register 'SPI2_DW'. */
  1651. void GH_SPI2_set_DW_DW(U16 data);
  1652. /*! \brief Reads the bit group 'DW' from the mirror variable of register 'SPI2_DW'. */
  1653. U16 GH_SPI2_getm_DW_DW(void);
  1654. #else /* GH_INLINE_LEVEL < 2 */
  1655. GH_INLINE void GH_SPI2_set_DW(U32 data)
  1656. {
  1657. m_spi2_dw.all = data;
  1658. *(volatile U32 *)REG_SPI2_DW = data;
  1659. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1660. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_DW] <-- 0x%08x\n",
  1661. REG_SPI2_DW,data,data);
  1662. #endif
  1663. }
  1664. GH_INLINE U32 GH_SPI2_getm_DW(void)
  1665. {
  1666. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1667. GH_SPI2_DEBUG_PRINT_FUNCTION( "[GH_SPI2_getm_DW] --> 0x%08x\n",
  1668. m_spi2_dw.all);
  1669. #endif
  1670. return m_spi2_dw.all;
  1671. }
  1672. GH_INLINE void GH_SPI2_set_DW_DW(U16 data)
  1673. {
  1674. m_spi2_dw.bitc.dw = data;
  1675. *(volatile U32 *)REG_SPI2_DW = m_spi2_dw.all;
  1676. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1677. GH_SPI2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_SPI2_set_DW_DW] <-- 0x%08x\n",
  1678. REG_SPI2_DW,m_spi2_dw.all,m_spi2_dw.all);
  1679. #endif
  1680. }
  1681. GH_INLINE U16 GH_SPI2_getm_DW_DW(void)
  1682. {
  1683. #if GH_SPI2_ENABLE_DEBUG_PRINT
  1684. GH_SPI2_DEBUG_PRINT_FUNCTION( "[GH_SPI2_getm_DW_DW] --> 0x%08x\n",
  1685. m_spi2_dw.bitc.dw);
  1686. #endif
  1687. return m_spi2_dw.bitc.dw;
  1688. }
  1689. #endif /* GH_INLINE_LEVEL < 2 */
  1690. /*----------------------------------------------------------------------------*/
  1691. /* init function */
  1692. /*----------------------------------------------------------------------------*/
  1693. /*! \brief Initialises the registers and mirror variables. */
  1694. void GH_SPI2_init(void);
  1695. #ifdef __cplusplus
  1696. }
  1697. #endif
  1698. #endif /* _GH_SPI2_H */
  1699. /*----------------------------------------------------------------------------*/
  1700. /* end of file */
  1701. /*----------------------------------------------------------------------------*/