gh_uart2.h 53 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495
  1. /*!
  2. *******************************************************************************
  3. **
  4. ** \file gh_uart2.h
  5. **
  6. ** \brief UART2.
  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_UART2_H
  18. #define _GH_UART2_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_UART2_ENABLE_DEBUG_PRINT 0
  30. #ifdef __LINUX__
  31. #define GH_UART2_DEBUG_PRINT_FUNCTION printk
  32. #else
  33. #define GH_UART2_DEBUG_PRINT_FUNCTION printf
  34. #endif
  35. #ifndef __LINUX__
  36. #if GH_UART2_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_UART2_RBR FIO_ADDRESS(UART2,0xA001E000) /* read */
  59. #define REG_UART2_THR FIO_ADDRESS(UART2,0xA001E000) /* write */
  60. #define REG_UART2_DLL FIO_ADDRESS(UART2,0xA001E000) /* read/write */
  61. #define REG_UART2_IER FIO_ADDRESS(UART2,0xA001E004) /* read/write */
  62. #define REG_UART2_DLH FIO_ADDRESS(UART2,0xA001E004) /* read/write */
  63. #define REG_UART2_IIR FIO_ADDRESS(UART2,0xA001E008) /* read */
  64. #define REG_UART2_FCR FIO_ADDRESS(UART2,0xA001E008) /* write */
  65. #define REG_UART2_LCR FIO_ADDRESS(UART2,0xA001E00C) /* read/write */
  66. #define REG_UART2_MCR FIO_ADDRESS(UART2,0xA001E010) /* read/write */
  67. #define REG_UART2_LSR FIO_ADDRESS(UART2,0xA001E014) /* read */
  68. #define REG_UART2_MSR FIO_ADDRESS(UART2,0xA001E018) /* read */
  69. #define REG_UART2_SCR FIO_ADDRESS(UART2,0xA001E01C) /* read/write */
  70. /*----------------------------------------------------------------------------*/
  71. /* bit group structures */
  72. /*----------------------------------------------------------------------------*/
  73. typedef union { /* UART2_RBR */
  74. U32 all;
  75. struct {
  76. U32 data : 8;
  77. U32 : 24;
  78. } bitc;
  79. } GH_UART2_RBR_S;
  80. typedef union { /* UART2_THR */
  81. U32 all;
  82. struct {
  83. U32 data : 8;
  84. U32 : 24;
  85. } bitc;
  86. } GH_UART2_THR_S;
  87. typedef union { /* UART2_DLL */
  88. U32 all;
  89. struct {
  90. U32 bauddivint_l : 8;
  91. U32 : 24;
  92. } bitc;
  93. } GH_UART2_DLL_S;
  94. typedef union { /* UART2_IER */
  95. U32 all;
  96. struct {
  97. U32 erbfi : 1;
  98. U32 etbei : 1;
  99. U32 elsi : 1;
  100. U32 edssi : 1;
  101. U32 : 28;
  102. } bitc;
  103. } GH_UART2_IER_S;
  104. typedef union { /* UART2_DLH */
  105. U32 all;
  106. struct {
  107. U32 bauddivint_h : 8;
  108. U32 : 24;
  109. } bitc;
  110. } GH_UART2_DLH_S;
  111. typedef union { /* UART2_IIR */
  112. U32 all;
  113. struct {
  114. U32 interrupt_id : 4;
  115. U32 : 2;
  116. U32 fifos_enabled : 2;
  117. U32 : 24;
  118. } bitc;
  119. } GH_UART2_IIR_S;
  120. typedef union { /* UART2_FCR */
  121. U32 all;
  122. struct {
  123. U32 fifo_enable : 1;
  124. U32 rcvr_fifo_reset : 1;
  125. U32 xmit_fifo_reset : 1;
  126. U32 dma_mode : 1;
  127. U32 tx_empty_trigger : 2;
  128. U32 rcvr_trigger : 2;
  129. U32 : 24;
  130. } bitc;
  131. } GH_UART2_FCR_S;
  132. typedef union { /* UART2_LCR */
  133. U32 all;
  134. struct {
  135. U32 cls : 2;
  136. U32 stop : 1;
  137. U32 pen : 1;
  138. U32 eps : 1;
  139. U32 sticky_parity : 1;
  140. U32 breaks : 1;
  141. U32 dlab : 1;
  142. U32 : 24;
  143. } bitc;
  144. } GH_UART2_LCR_S;
  145. typedef union { /* UART2_MCR */
  146. U32 all;
  147. struct {
  148. U32 dtr : 1;
  149. U32 rts : 1;
  150. U32 out1 : 1;
  151. U32 out2 : 1;
  152. U32 loopback : 1;
  153. U32 afce : 1;
  154. U32 sire : 1;
  155. U32 : 25;
  156. } bitc;
  157. } GH_UART2_MCR_S;
  158. typedef union { /* UART2_LSR */
  159. U32 all;
  160. struct {
  161. U32 dr : 1;
  162. U32 oe : 1;
  163. U32 pe : 1;
  164. U32 fe : 1;
  165. U32 bi : 1;
  166. U32 : 1;
  167. U32 temt : 1;
  168. U32 : 25;
  169. } bitc;
  170. } GH_UART2_LSR_S;
  171. typedef union { /* UART2_MSR */
  172. U32 all;
  173. struct {
  174. U32 dcts : 1;
  175. U32 ddsr : 1;
  176. U32 teri : 1;
  177. U32 ddcd : 1;
  178. U32 cts : 1;
  179. U32 dsr : 1;
  180. U32 ri : 1;
  181. U32 dcd : 1;
  182. U32 : 24;
  183. } bitc;
  184. } GH_UART2_MSR_S;
  185. typedef union { /* UART2_SCR */
  186. U32 all;
  187. struct {
  188. U32 scr : 8;
  189. U32 : 24;
  190. } bitc;
  191. } GH_UART2_SCR_S;
  192. /*----------------------------------------------------------------------------*/
  193. /* mirror variables */
  194. /*----------------------------------------------------------------------------*/
  195. extern GH_UART2_THR_S m_uart2_thr;
  196. extern GH_UART2_FCR_S m_uart2_fcr;
  197. #ifdef __cplusplus
  198. extern "C" {
  199. #endif
  200. /*----------------------------------------------------------------------------*/
  201. /* register UART2_RBR (read) */
  202. /*----------------------------------------------------------------------------*/
  203. #if GH_INLINE_LEVEL == 0
  204. /*! \brief Reads the register 'UART2_RBR'. */
  205. U32 GH_UART2_get_RBR(void);
  206. /*! \brief Reads the bit group 'Data' of register 'UART2_RBR'. */
  207. U8 GH_UART2_get_RBR_Data(void);
  208. #else /* GH_INLINE_LEVEL == 0 */
  209. GH_INLINE U32 GH_UART2_get_RBR(void)
  210. {
  211. U32 value = (*(volatile U32 *)REG_UART2_RBR);
  212. #if GH_UART2_ENABLE_DEBUG_PRINT
  213. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_RBR] --> 0x%08x\n",
  214. REG_UART2_RBR,value);
  215. #endif
  216. return value;
  217. }
  218. GH_INLINE U8 GH_UART2_get_RBR_Data(void)
  219. {
  220. GH_UART2_RBR_S tmp_value;
  221. U32 value = (*(volatile U32 *)REG_UART2_RBR);
  222. tmp_value.all = value;
  223. #if GH_UART2_ENABLE_DEBUG_PRINT
  224. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_RBR_Data] --> 0x%08x\n",
  225. REG_UART2_RBR,value);
  226. #endif
  227. return tmp_value.bitc.data;
  228. }
  229. #endif /* GH_INLINE_LEVEL == 0 */
  230. /*----------------------------------------------------------------------------*/
  231. /* register UART2_THR (write) */
  232. /*----------------------------------------------------------------------------*/
  233. #if GH_INLINE_LEVEL < 2
  234. /*! \brief Writes the register 'UART2_THR'. */
  235. void GH_UART2_set_THR(U32 data);
  236. /*! \brief Reads the mirror variable of the register 'UART2_THR'. */
  237. U32 GH_UART2_getm_THR(void);
  238. /*! \brief Writes the bit group 'Data' of register 'UART2_THR'. */
  239. void GH_UART2_set_THR_Data(U8 data);
  240. /*! \brief Reads the bit group 'Data' from the mirror variable of register 'UART2_THR'. */
  241. U8 GH_UART2_getm_THR_Data(void);
  242. #else /* GH_INLINE_LEVEL < 2 */
  243. GH_INLINE void GH_UART2_set_THR(U32 data)
  244. {
  245. m_uart2_thr.all = data;
  246. *(volatile U32 *)REG_UART2_THR = data;
  247. #if GH_UART2_ENABLE_DEBUG_PRINT
  248. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_THR] <-- 0x%08x\n",
  249. REG_UART2_THR,data,data);
  250. #endif
  251. }
  252. GH_INLINE U32 GH_UART2_getm_THR(void)
  253. {
  254. #if GH_UART2_ENABLE_DEBUG_PRINT
  255. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_THR] --> 0x%08x\n",
  256. m_uart2_thr.all);
  257. #endif
  258. return m_uart2_thr.all;
  259. }
  260. GH_INLINE void GH_UART2_set_THR_Data(U8 data)
  261. {
  262. m_uart2_thr.bitc.data = data;
  263. *(volatile U32 *)REG_UART2_THR = m_uart2_thr.all;
  264. #if GH_UART2_ENABLE_DEBUG_PRINT
  265. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_THR_Data] <-- 0x%08x\n",
  266. REG_UART2_THR,m_uart2_thr.all,m_uart2_thr.all);
  267. #endif
  268. }
  269. GH_INLINE U8 GH_UART2_getm_THR_Data(void)
  270. {
  271. #if GH_UART2_ENABLE_DEBUG_PRINT
  272. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_THR_Data] --> 0x%08x\n",
  273. m_uart2_thr.bitc.data);
  274. #endif
  275. return m_uart2_thr.bitc.data;
  276. }
  277. #endif /* GH_INLINE_LEVEL < 2 */
  278. /*----------------------------------------------------------------------------*/
  279. /* register UART2_DLL (read/write) */
  280. /*----------------------------------------------------------------------------*/
  281. #if GH_INLINE_LEVEL == 0
  282. /*! \brief Writes the register 'UART2_DLL'. */
  283. void GH_UART2_set_DLL(U32 data);
  284. /*! \brief Reads the register 'UART2_DLL'. */
  285. U32 GH_UART2_get_DLL(void);
  286. /*! \brief Writes the bit group 'BaudDivint_L' of register 'UART2_DLL'. */
  287. void GH_UART2_set_DLL_BaudDivint_L(U8 data);
  288. /*! \brief Reads the bit group 'BaudDivint_L' of register 'UART2_DLL'. */
  289. U8 GH_UART2_get_DLL_BaudDivint_L(void);
  290. #else /* GH_INLINE_LEVEL == 0 */
  291. GH_INLINE void GH_UART2_set_DLL(U32 data)
  292. {
  293. *(volatile U32 *)REG_UART2_DLL = data;
  294. #if GH_UART2_ENABLE_DEBUG_PRINT
  295. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_DLL] <-- 0x%08x\n",
  296. REG_UART2_DLL,data,data);
  297. #endif
  298. }
  299. GH_INLINE U32 GH_UART2_get_DLL(void)
  300. {
  301. U32 value = (*(volatile U32 *)REG_UART2_DLL);
  302. #if GH_UART2_ENABLE_DEBUG_PRINT
  303. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_DLL] --> 0x%08x\n",
  304. REG_UART2_DLL,value);
  305. #endif
  306. return value;
  307. }
  308. GH_INLINE void GH_UART2_set_DLL_BaudDivint_L(U8 data)
  309. {
  310. GH_UART2_DLL_S d;
  311. d.all = *(volatile U32 *)REG_UART2_DLL;
  312. d.bitc.bauddivint_l = data;
  313. *(volatile U32 *)REG_UART2_DLL = d.all;
  314. #if GH_UART2_ENABLE_DEBUG_PRINT
  315. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_DLL_BaudDivint_L] <-- 0x%08x\n",
  316. REG_UART2_DLL,d.all,d.all);
  317. #endif
  318. }
  319. GH_INLINE U8 GH_UART2_get_DLL_BaudDivint_L(void)
  320. {
  321. GH_UART2_DLL_S tmp_value;
  322. U32 value = (*(volatile U32 *)REG_UART2_DLL);
  323. tmp_value.all = value;
  324. #if GH_UART2_ENABLE_DEBUG_PRINT
  325. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_DLL_BaudDivint_L] --> 0x%08x\n",
  326. REG_UART2_DLL,value);
  327. #endif
  328. return tmp_value.bitc.bauddivint_l;
  329. }
  330. #endif /* GH_INLINE_LEVEL == 0 */
  331. /*----------------------------------------------------------------------------*/
  332. /* register UART2_IER (read/write) */
  333. /*----------------------------------------------------------------------------*/
  334. #if GH_INLINE_LEVEL == 0
  335. /*! \brief Writes the register 'UART2_IER'. */
  336. void GH_UART2_set_IER(U32 data);
  337. /*! \brief Reads the register 'UART2_IER'. */
  338. U32 GH_UART2_get_IER(void);
  339. /*! \brief Writes the bit group 'erbfi' of register 'UART2_IER'. */
  340. void GH_UART2_set_IER_erbfi(U8 data);
  341. /*! \brief Reads the bit group 'erbfi' of register 'UART2_IER'. */
  342. U8 GH_UART2_get_IER_erbfi(void);
  343. /*! \brief Writes the bit group 'etbei' of register 'UART2_IER'. */
  344. void GH_UART2_set_IER_etbei(U8 data);
  345. /*! \brief Reads the bit group 'etbei' of register 'UART2_IER'. */
  346. U8 GH_UART2_get_IER_etbei(void);
  347. /*! \brief Writes the bit group 'elsi' of register 'UART2_IER'. */
  348. void GH_UART2_set_IER_elsi(U8 data);
  349. /*! \brief Reads the bit group 'elsi' of register 'UART2_IER'. */
  350. U8 GH_UART2_get_IER_elsi(void);
  351. /*! \brief Writes the bit group 'edssi' of register 'UART2_IER'. */
  352. void GH_UART2_set_IER_edssi(U8 data);
  353. /*! \brief Reads the bit group 'edssi' of register 'UART2_IER'. */
  354. U8 GH_UART2_get_IER_edssi(void);
  355. #else /* GH_INLINE_LEVEL == 0 */
  356. GH_INLINE void GH_UART2_set_IER(U32 data)
  357. {
  358. *(volatile U32 *)REG_UART2_IER = data;
  359. #if GH_UART2_ENABLE_DEBUG_PRINT
  360. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_IER] <-- 0x%08x\n",
  361. REG_UART2_IER,data,data);
  362. #endif
  363. }
  364. GH_INLINE U32 GH_UART2_get_IER(void)
  365. {
  366. U32 value = (*(volatile U32 *)REG_UART2_IER);
  367. #if GH_UART2_ENABLE_DEBUG_PRINT
  368. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IER] --> 0x%08x\n",
  369. REG_UART2_IER,value);
  370. #endif
  371. return value;
  372. }
  373. GH_INLINE void GH_UART2_set_IER_erbfi(U8 data)
  374. {
  375. GH_UART2_IER_S d;
  376. d.all = *(volatile U32 *)REG_UART2_IER;
  377. d.bitc.erbfi = data;
  378. *(volatile U32 *)REG_UART2_IER = d.all;
  379. #if GH_UART2_ENABLE_DEBUG_PRINT
  380. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_IER_erbfi] <-- 0x%08x\n",
  381. REG_UART2_IER,d.all,d.all);
  382. #endif
  383. }
  384. GH_INLINE U8 GH_UART2_get_IER_erbfi(void)
  385. {
  386. GH_UART2_IER_S tmp_value;
  387. U32 value = (*(volatile U32 *)REG_UART2_IER);
  388. tmp_value.all = value;
  389. #if GH_UART2_ENABLE_DEBUG_PRINT
  390. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IER_erbfi] --> 0x%08x\n",
  391. REG_UART2_IER,value);
  392. #endif
  393. return tmp_value.bitc.erbfi;
  394. }
  395. GH_INLINE void GH_UART2_set_IER_etbei(U8 data)
  396. {
  397. GH_UART2_IER_S d;
  398. d.all = *(volatile U32 *)REG_UART2_IER;
  399. d.bitc.etbei = data;
  400. *(volatile U32 *)REG_UART2_IER = d.all;
  401. #if GH_UART2_ENABLE_DEBUG_PRINT
  402. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_IER_etbei] <-- 0x%08x\n",
  403. REG_UART2_IER,d.all,d.all);
  404. #endif
  405. }
  406. GH_INLINE U8 GH_UART2_get_IER_etbei(void)
  407. {
  408. GH_UART2_IER_S tmp_value;
  409. U32 value = (*(volatile U32 *)REG_UART2_IER);
  410. tmp_value.all = value;
  411. #if GH_UART2_ENABLE_DEBUG_PRINT
  412. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IER_etbei] --> 0x%08x\n",
  413. REG_UART2_IER,value);
  414. #endif
  415. return tmp_value.bitc.etbei;
  416. }
  417. GH_INLINE void GH_UART2_set_IER_elsi(U8 data)
  418. {
  419. GH_UART2_IER_S d;
  420. d.all = *(volatile U32 *)REG_UART2_IER;
  421. d.bitc.elsi = data;
  422. *(volatile U32 *)REG_UART2_IER = d.all;
  423. #if GH_UART2_ENABLE_DEBUG_PRINT
  424. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_IER_elsi] <-- 0x%08x\n",
  425. REG_UART2_IER,d.all,d.all);
  426. #endif
  427. }
  428. GH_INLINE U8 GH_UART2_get_IER_elsi(void)
  429. {
  430. GH_UART2_IER_S tmp_value;
  431. U32 value = (*(volatile U32 *)REG_UART2_IER);
  432. tmp_value.all = value;
  433. #if GH_UART2_ENABLE_DEBUG_PRINT
  434. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IER_elsi] --> 0x%08x\n",
  435. REG_UART2_IER,value);
  436. #endif
  437. return tmp_value.bitc.elsi;
  438. }
  439. GH_INLINE void GH_UART2_set_IER_edssi(U8 data)
  440. {
  441. GH_UART2_IER_S d;
  442. d.all = *(volatile U32 *)REG_UART2_IER;
  443. d.bitc.edssi = data;
  444. *(volatile U32 *)REG_UART2_IER = d.all;
  445. #if GH_UART2_ENABLE_DEBUG_PRINT
  446. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_IER_edssi] <-- 0x%08x\n",
  447. REG_UART2_IER,d.all,d.all);
  448. #endif
  449. }
  450. GH_INLINE U8 GH_UART2_get_IER_edssi(void)
  451. {
  452. GH_UART2_IER_S tmp_value;
  453. U32 value = (*(volatile U32 *)REG_UART2_IER);
  454. tmp_value.all = value;
  455. #if GH_UART2_ENABLE_DEBUG_PRINT
  456. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IER_edssi] --> 0x%08x\n",
  457. REG_UART2_IER,value);
  458. #endif
  459. return tmp_value.bitc.edssi;
  460. }
  461. #endif /* GH_INLINE_LEVEL == 0 */
  462. /*----------------------------------------------------------------------------*/
  463. /* register UART2_DLH (read/write) */
  464. /*----------------------------------------------------------------------------*/
  465. #if GH_INLINE_LEVEL == 0
  466. /*! \brief Writes the register 'UART2_DLH'. */
  467. void GH_UART2_set_DLH(U32 data);
  468. /*! \brief Reads the register 'UART2_DLH'. */
  469. U32 GH_UART2_get_DLH(void);
  470. /*! \brief Writes the bit group 'BaudDivint_H' of register 'UART2_DLH'. */
  471. void GH_UART2_set_DLH_BaudDivint_H(U8 data);
  472. /*! \brief Reads the bit group 'BaudDivint_H' of register 'UART2_DLH'. */
  473. U8 GH_UART2_get_DLH_BaudDivint_H(void);
  474. #else /* GH_INLINE_LEVEL == 0 */
  475. GH_INLINE void GH_UART2_set_DLH(U32 data)
  476. {
  477. *(volatile U32 *)REG_UART2_DLH = data;
  478. #if GH_UART2_ENABLE_DEBUG_PRINT
  479. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_DLH] <-- 0x%08x\n",
  480. REG_UART2_DLH,data,data);
  481. #endif
  482. }
  483. GH_INLINE U32 GH_UART2_get_DLH(void)
  484. {
  485. U32 value = (*(volatile U32 *)REG_UART2_DLH);
  486. #if GH_UART2_ENABLE_DEBUG_PRINT
  487. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_DLH] --> 0x%08x\n",
  488. REG_UART2_DLH,value);
  489. #endif
  490. return value;
  491. }
  492. GH_INLINE void GH_UART2_set_DLH_BaudDivint_H(U8 data)
  493. {
  494. GH_UART2_DLH_S d;
  495. d.all = *(volatile U32 *)REG_UART2_DLH;
  496. d.bitc.bauddivint_h = data;
  497. *(volatile U32 *)REG_UART2_DLH = d.all;
  498. #if GH_UART2_ENABLE_DEBUG_PRINT
  499. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_DLH_BaudDivint_H] <-- 0x%08x\n",
  500. REG_UART2_DLH,d.all,d.all);
  501. #endif
  502. }
  503. GH_INLINE U8 GH_UART2_get_DLH_BaudDivint_H(void)
  504. {
  505. GH_UART2_DLH_S tmp_value;
  506. U32 value = (*(volatile U32 *)REG_UART2_DLH);
  507. tmp_value.all = value;
  508. #if GH_UART2_ENABLE_DEBUG_PRINT
  509. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_DLH_BaudDivint_H] --> 0x%08x\n",
  510. REG_UART2_DLH,value);
  511. #endif
  512. return tmp_value.bitc.bauddivint_h;
  513. }
  514. #endif /* GH_INLINE_LEVEL == 0 */
  515. /*----------------------------------------------------------------------------*/
  516. /* register UART2_IIR (read) */
  517. /*----------------------------------------------------------------------------*/
  518. #if GH_INLINE_LEVEL == 0
  519. /*! \brief Reads the register 'UART2_IIR'. */
  520. U32 GH_UART2_get_IIR(void);
  521. /*! \brief Reads the bit group 'interrupt_id' of register 'UART2_IIR'. */
  522. U8 GH_UART2_get_IIR_interrupt_id(void);
  523. /*! \brief Reads the bit group 'fifos_enabled' of register 'UART2_IIR'. */
  524. U8 GH_UART2_get_IIR_fifos_enabled(void);
  525. #else /* GH_INLINE_LEVEL == 0 */
  526. GH_INLINE U32 GH_UART2_get_IIR(void)
  527. {
  528. U32 value = (*(volatile U32 *)REG_UART2_IIR);
  529. #if GH_UART2_ENABLE_DEBUG_PRINT
  530. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IIR] --> 0x%08x\n",
  531. REG_UART2_IIR,value);
  532. #endif
  533. return value;
  534. }
  535. GH_INLINE U8 GH_UART2_get_IIR_interrupt_id(void)
  536. {
  537. GH_UART2_IIR_S tmp_value;
  538. U32 value = (*(volatile U32 *)REG_UART2_IIR);
  539. tmp_value.all = value;
  540. #if GH_UART2_ENABLE_DEBUG_PRINT
  541. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IIR_interrupt_id] --> 0x%08x\n",
  542. REG_UART2_IIR,value);
  543. #endif
  544. return tmp_value.bitc.interrupt_id;
  545. }
  546. GH_INLINE U8 GH_UART2_get_IIR_fifos_enabled(void)
  547. {
  548. GH_UART2_IIR_S tmp_value;
  549. U32 value = (*(volatile U32 *)REG_UART2_IIR);
  550. tmp_value.all = value;
  551. #if GH_UART2_ENABLE_DEBUG_PRINT
  552. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_IIR_fifos_enabled] --> 0x%08x\n",
  553. REG_UART2_IIR,value);
  554. #endif
  555. return tmp_value.bitc.fifos_enabled;
  556. }
  557. #endif /* GH_INLINE_LEVEL == 0 */
  558. /*----------------------------------------------------------------------------*/
  559. /* register UART2_FCR (write) */
  560. /*----------------------------------------------------------------------------*/
  561. #if GH_INLINE_LEVEL < 2
  562. /*! \brief Writes the register 'UART2_FCR'. */
  563. void GH_UART2_set_FCR(U32 data);
  564. /*! \brief Reads the mirror variable of the register 'UART2_FCR'. */
  565. U32 GH_UART2_getm_FCR(void);
  566. /*! \brief Writes the bit group 'FIFO_Enable' of register 'UART2_FCR'. */
  567. void GH_UART2_set_FCR_FIFO_Enable(U8 data);
  568. /*! \brief Reads the bit group 'FIFO_Enable' from the mirror variable of register 'UART2_FCR'. */
  569. U8 GH_UART2_getm_FCR_FIFO_Enable(void);
  570. /*! \brief Writes the bit group 'RCVR_FIFO_Reset' of register 'UART2_FCR'. */
  571. void GH_UART2_set_FCR_RCVR_FIFO_Reset(U8 data);
  572. /*! \brief Reads the bit group 'RCVR_FIFO_Reset' from the mirror variable of register 'UART2_FCR'. */
  573. U8 GH_UART2_getm_FCR_RCVR_FIFO_Reset(void);
  574. /*! \brief Writes the bit group 'XMIT_FIFO_Reset' of register 'UART2_FCR'. */
  575. void GH_UART2_set_FCR_XMIT_FIFO_Reset(U8 data);
  576. /*! \brief Reads the bit group 'XMIT_FIFO_Reset' from the mirror variable of register 'UART2_FCR'. */
  577. U8 GH_UART2_getm_FCR_XMIT_FIFO_Reset(void);
  578. /*! \brief Writes the bit group 'DMA_Mode' of register 'UART2_FCR'. */
  579. void GH_UART2_set_FCR_DMA_Mode(U8 data);
  580. /*! \brief Reads the bit group 'DMA_Mode' from the mirror variable of register 'UART2_FCR'. */
  581. U8 GH_UART2_getm_FCR_DMA_Mode(void);
  582. /*! \brief Writes the bit group 'TX_Empty_Trigger' of register 'UART2_FCR'. */
  583. void GH_UART2_set_FCR_TX_Empty_Trigger(U8 data);
  584. /*! \brief Reads the bit group 'TX_Empty_Trigger' from the mirror variable of register 'UART2_FCR'. */
  585. U8 GH_UART2_getm_FCR_TX_Empty_Trigger(void);
  586. /*! \brief Writes the bit group 'RCVR_Trigger' of register 'UART2_FCR'. */
  587. void GH_UART2_set_FCR_RCVR_Trigger(U8 data);
  588. /*! \brief Reads the bit group 'RCVR_Trigger' from the mirror variable of register 'UART2_FCR'. */
  589. U8 GH_UART2_getm_FCR_RCVR_Trigger(void);
  590. #else /* GH_INLINE_LEVEL < 2 */
  591. GH_INLINE void GH_UART2_set_FCR(U32 data)
  592. {
  593. m_uart2_fcr.all = data;
  594. *(volatile U32 *)REG_UART2_FCR = data;
  595. #if GH_UART2_ENABLE_DEBUG_PRINT
  596. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_FCR] <-- 0x%08x\n",
  597. REG_UART2_FCR,data,data);
  598. #endif
  599. }
  600. GH_INLINE U32 GH_UART2_getm_FCR(void)
  601. {
  602. #if GH_UART2_ENABLE_DEBUG_PRINT
  603. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_FCR] --> 0x%08x\n",
  604. m_uart2_fcr.all);
  605. #endif
  606. return m_uart2_fcr.all;
  607. }
  608. GH_INLINE void GH_UART2_set_FCR_FIFO_Enable(U8 data)
  609. {
  610. m_uart2_fcr.bitc.fifo_enable = data;
  611. *(volatile U32 *)REG_UART2_FCR = m_uart2_fcr.all;
  612. #if GH_UART2_ENABLE_DEBUG_PRINT
  613. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_FCR_FIFO_Enable] <-- 0x%08x\n",
  614. REG_UART2_FCR,m_uart2_fcr.all,m_uart2_fcr.all);
  615. #endif
  616. }
  617. GH_INLINE U8 GH_UART2_getm_FCR_FIFO_Enable(void)
  618. {
  619. #if GH_UART2_ENABLE_DEBUG_PRINT
  620. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_FCR_FIFO_Enable] --> 0x%08x\n",
  621. m_uart2_fcr.bitc.fifo_enable);
  622. #endif
  623. return m_uart2_fcr.bitc.fifo_enable;
  624. }
  625. GH_INLINE void GH_UART2_set_FCR_RCVR_FIFO_Reset(U8 data)
  626. {
  627. m_uart2_fcr.bitc.rcvr_fifo_reset = data;
  628. *(volatile U32 *)REG_UART2_FCR = m_uart2_fcr.all;
  629. #if GH_UART2_ENABLE_DEBUG_PRINT
  630. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_FCR_RCVR_FIFO_Reset] <-- 0x%08x\n",
  631. REG_UART2_FCR,m_uart2_fcr.all,m_uart2_fcr.all);
  632. #endif
  633. }
  634. GH_INLINE U8 GH_UART2_getm_FCR_RCVR_FIFO_Reset(void)
  635. {
  636. #if GH_UART2_ENABLE_DEBUG_PRINT
  637. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_FCR_RCVR_FIFO_Reset] --> 0x%08x\n",
  638. m_uart2_fcr.bitc.rcvr_fifo_reset);
  639. #endif
  640. return m_uart2_fcr.bitc.rcvr_fifo_reset;
  641. }
  642. GH_INLINE void GH_UART2_set_FCR_XMIT_FIFO_Reset(U8 data)
  643. {
  644. m_uart2_fcr.bitc.xmit_fifo_reset = data;
  645. *(volatile U32 *)REG_UART2_FCR = m_uart2_fcr.all;
  646. #if GH_UART2_ENABLE_DEBUG_PRINT
  647. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_FCR_XMIT_FIFO_Reset] <-- 0x%08x\n",
  648. REG_UART2_FCR,m_uart2_fcr.all,m_uart2_fcr.all);
  649. #endif
  650. }
  651. GH_INLINE U8 GH_UART2_getm_FCR_XMIT_FIFO_Reset(void)
  652. {
  653. #if GH_UART2_ENABLE_DEBUG_PRINT
  654. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_FCR_XMIT_FIFO_Reset] --> 0x%08x\n",
  655. m_uart2_fcr.bitc.xmit_fifo_reset);
  656. #endif
  657. return m_uart2_fcr.bitc.xmit_fifo_reset;
  658. }
  659. GH_INLINE void GH_UART2_set_FCR_DMA_Mode(U8 data)
  660. {
  661. m_uart2_fcr.bitc.dma_mode = data;
  662. *(volatile U32 *)REG_UART2_FCR = m_uart2_fcr.all;
  663. #if GH_UART2_ENABLE_DEBUG_PRINT
  664. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_FCR_DMA_Mode] <-- 0x%08x\n",
  665. REG_UART2_FCR,m_uart2_fcr.all,m_uart2_fcr.all);
  666. #endif
  667. }
  668. GH_INLINE U8 GH_UART2_getm_FCR_DMA_Mode(void)
  669. {
  670. #if GH_UART2_ENABLE_DEBUG_PRINT
  671. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_FCR_DMA_Mode] --> 0x%08x\n",
  672. m_uart2_fcr.bitc.dma_mode);
  673. #endif
  674. return m_uart2_fcr.bitc.dma_mode;
  675. }
  676. GH_INLINE void GH_UART2_set_FCR_TX_Empty_Trigger(U8 data)
  677. {
  678. m_uart2_fcr.bitc.tx_empty_trigger = data;
  679. *(volatile U32 *)REG_UART2_FCR = m_uart2_fcr.all;
  680. #if GH_UART2_ENABLE_DEBUG_PRINT
  681. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_FCR_TX_Empty_Trigger] <-- 0x%08x\n",
  682. REG_UART2_FCR,m_uart2_fcr.all,m_uart2_fcr.all);
  683. #endif
  684. }
  685. GH_INLINE U8 GH_UART2_getm_FCR_TX_Empty_Trigger(void)
  686. {
  687. #if GH_UART2_ENABLE_DEBUG_PRINT
  688. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_FCR_TX_Empty_Trigger] --> 0x%08x\n",
  689. m_uart2_fcr.bitc.tx_empty_trigger);
  690. #endif
  691. return m_uart2_fcr.bitc.tx_empty_trigger;
  692. }
  693. GH_INLINE void GH_UART2_set_FCR_RCVR_Trigger(U8 data)
  694. {
  695. m_uart2_fcr.bitc.rcvr_trigger = data;
  696. *(volatile U32 *)REG_UART2_FCR = m_uart2_fcr.all;
  697. #if GH_UART2_ENABLE_DEBUG_PRINT
  698. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_FCR_RCVR_Trigger] <-- 0x%08x\n",
  699. REG_UART2_FCR,m_uart2_fcr.all,m_uart2_fcr.all);
  700. #endif
  701. }
  702. GH_INLINE U8 GH_UART2_getm_FCR_RCVR_Trigger(void)
  703. {
  704. #if GH_UART2_ENABLE_DEBUG_PRINT
  705. GH_UART2_DEBUG_PRINT_FUNCTION( "[GH_UART2_getm_FCR_RCVR_Trigger] --> 0x%08x\n",
  706. m_uart2_fcr.bitc.rcvr_trigger);
  707. #endif
  708. return m_uart2_fcr.bitc.rcvr_trigger;
  709. }
  710. #endif /* GH_INLINE_LEVEL < 2 */
  711. /*----------------------------------------------------------------------------*/
  712. /* register UART2_LCR (read/write) */
  713. /*----------------------------------------------------------------------------*/
  714. #if GH_INLINE_LEVEL == 0
  715. /*! \brief Writes the register 'UART2_LCR'. */
  716. void GH_UART2_set_LCR(U32 data);
  717. /*! \brief Reads the register 'UART2_LCR'. */
  718. U32 GH_UART2_get_LCR(void);
  719. /*! \brief Writes the bit group 'cls' of register 'UART2_LCR'. */
  720. void GH_UART2_set_LCR_cls(U8 data);
  721. /*! \brief Reads the bit group 'cls' of register 'UART2_LCR'. */
  722. U8 GH_UART2_get_LCR_cls(void);
  723. /*! \brief Writes the bit group 'stop' of register 'UART2_LCR'. */
  724. void GH_UART2_set_LCR_stop(U8 data);
  725. /*! \brief Reads the bit group 'stop' of register 'UART2_LCR'. */
  726. U8 GH_UART2_get_LCR_stop(void);
  727. /*! \brief Writes the bit group 'pen' of register 'UART2_LCR'. */
  728. void GH_UART2_set_LCR_pen(U8 data);
  729. /*! \brief Reads the bit group 'pen' of register 'UART2_LCR'. */
  730. U8 GH_UART2_get_LCR_pen(void);
  731. /*! \brief Writes the bit group 'eps' of register 'UART2_LCR'. */
  732. void GH_UART2_set_LCR_eps(U8 data);
  733. /*! \brief Reads the bit group 'eps' of register 'UART2_LCR'. */
  734. U8 GH_UART2_get_LCR_eps(void);
  735. /*! \brief Writes the bit group 'sticky_parity' of register 'UART2_LCR'. */
  736. void GH_UART2_set_LCR_sticky_parity(U8 data);
  737. /*! \brief Reads the bit group 'sticky_parity' of register 'UART2_LCR'. */
  738. U8 GH_UART2_get_LCR_sticky_parity(void);
  739. /*! \brief Writes the bit group 'breaks' of register 'UART2_LCR'. */
  740. void GH_UART2_set_LCR_breaks(U8 data);
  741. /*! \brief Reads the bit group 'breaks' of register 'UART2_LCR'. */
  742. U8 GH_UART2_get_LCR_breaks(void);
  743. /*! \brief Writes the bit group 'dlab' of register 'UART2_LCR'. */
  744. void GH_UART2_set_LCR_dlab(U8 data);
  745. /*! \brief Reads the bit group 'dlab' of register 'UART2_LCR'. */
  746. U8 GH_UART2_get_LCR_dlab(void);
  747. #else /* GH_INLINE_LEVEL == 0 */
  748. GH_INLINE void GH_UART2_set_LCR(U32 data)
  749. {
  750. *(volatile U32 *)REG_UART2_LCR = data;
  751. #if GH_UART2_ENABLE_DEBUG_PRINT
  752. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR] <-- 0x%08x\n",
  753. REG_UART2_LCR,data,data);
  754. #endif
  755. }
  756. GH_INLINE U32 GH_UART2_get_LCR(void)
  757. {
  758. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  759. #if GH_UART2_ENABLE_DEBUG_PRINT
  760. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR] --> 0x%08x\n",
  761. REG_UART2_LCR,value);
  762. #endif
  763. return value;
  764. }
  765. GH_INLINE void GH_UART2_set_LCR_cls(U8 data)
  766. {
  767. GH_UART2_LCR_S d;
  768. d.all = *(volatile U32 *)REG_UART2_LCR;
  769. d.bitc.cls = data;
  770. *(volatile U32 *)REG_UART2_LCR = d.all;
  771. #if GH_UART2_ENABLE_DEBUG_PRINT
  772. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR_cls] <-- 0x%08x\n",
  773. REG_UART2_LCR,d.all,d.all);
  774. #endif
  775. }
  776. GH_INLINE U8 GH_UART2_get_LCR_cls(void)
  777. {
  778. GH_UART2_LCR_S tmp_value;
  779. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  780. tmp_value.all = value;
  781. #if GH_UART2_ENABLE_DEBUG_PRINT
  782. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR_cls] --> 0x%08x\n",
  783. REG_UART2_LCR,value);
  784. #endif
  785. return tmp_value.bitc.cls;
  786. }
  787. GH_INLINE void GH_UART2_set_LCR_stop(U8 data)
  788. {
  789. GH_UART2_LCR_S d;
  790. d.all = *(volatile U32 *)REG_UART2_LCR;
  791. d.bitc.stop = data;
  792. *(volatile U32 *)REG_UART2_LCR = d.all;
  793. #if GH_UART2_ENABLE_DEBUG_PRINT
  794. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR_stop] <-- 0x%08x\n",
  795. REG_UART2_LCR,d.all,d.all);
  796. #endif
  797. }
  798. GH_INLINE U8 GH_UART2_get_LCR_stop(void)
  799. {
  800. GH_UART2_LCR_S tmp_value;
  801. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  802. tmp_value.all = value;
  803. #if GH_UART2_ENABLE_DEBUG_PRINT
  804. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR_stop] --> 0x%08x\n",
  805. REG_UART2_LCR,value);
  806. #endif
  807. return tmp_value.bitc.stop;
  808. }
  809. GH_INLINE void GH_UART2_set_LCR_pen(U8 data)
  810. {
  811. GH_UART2_LCR_S d;
  812. d.all = *(volatile U32 *)REG_UART2_LCR;
  813. d.bitc.pen = data;
  814. *(volatile U32 *)REG_UART2_LCR = d.all;
  815. #if GH_UART2_ENABLE_DEBUG_PRINT
  816. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR_pen] <-- 0x%08x\n",
  817. REG_UART2_LCR,d.all,d.all);
  818. #endif
  819. }
  820. GH_INLINE U8 GH_UART2_get_LCR_pen(void)
  821. {
  822. GH_UART2_LCR_S tmp_value;
  823. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  824. tmp_value.all = value;
  825. #if GH_UART2_ENABLE_DEBUG_PRINT
  826. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR_pen] --> 0x%08x\n",
  827. REG_UART2_LCR,value);
  828. #endif
  829. return tmp_value.bitc.pen;
  830. }
  831. GH_INLINE void GH_UART2_set_LCR_eps(U8 data)
  832. {
  833. GH_UART2_LCR_S d;
  834. d.all = *(volatile U32 *)REG_UART2_LCR;
  835. d.bitc.eps = data;
  836. *(volatile U32 *)REG_UART2_LCR = d.all;
  837. #if GH_UART2_ENABLE_DEBUG_PRINT
  838. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR_eps] <-- 0x%08x\n",
  839. REG_UART2_LCR,d.all,d.all);
  840. #endif
  841. }
  842. GH_INLINE U8 GH_UART2_get_LCR_eps(void)
  843. {
  844. GH_UART2_LCR_S tmp_value;
  845. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  846. tmp_value.all = value;
  847. #if GH_UART2_ENABLE_DEBUG_PRINT
  848. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR_eps] --> 0x%08x\n",
  849. REG_UART2_LCR,value);
  850. #endif
  851. return tmp_value.bitc.eps;
  852. }
  853. GH_INLINE void GH_UART2_set_LCR_sticky_parity(U8 data)
  854. {
  855. GH_UART2_LCR_S d;
  856. d.all = *(volatile U32 *)REG_UART2_LCR;
  857. d.bitc.sticky_parity = data;
  858. *(volatile U32 *)REG_UART2_LCR = d.all;
  859. #if GH_UART2_ENABLE_DEBUG_PRINT
  860. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR_sticky_parity] <-- 0x%08x\n",
  861. REG_UART2_LCR,d.all,d.all);
  862. #endif
  863. }
  864. GH_INLINE U8 GH_UART2_get_LCR_sticky_parity(void)
  865. {
  866. GH_UART2_LCR_S tmp_value;
  867. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  868. tmp_value.all = value;
  869. #if GH_UART2_ENABLE_DEBUG_PRINT
  870. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR_sticky_parity] --> 0x%08x\n",
  871. REG_UART2_LCR,value);
  872. #endif
  873. return tmp_value.bitc.sticky_parity;
  874. }
  875. GH_INLINE void GH_UART2_set_LCR_breaks(U8 data)
  876. {
  877. GH_UART2_LCR_S d;
  878. d.all = *(volatile U32 *)REG_UART2_LCR;
  879. d.bitc.breaks = data;
  880. *(volatile U32 *)REG_UART2_LCR = d.all;
  881. #if GH_UART2_ENABLE_DEBUG_PRINT
  882. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR_breaks] <-- 0x%08x\n",
  883. REG_UART2_LCR,d.all,d.all);
  884. #endif
  885. }
  886. GH_INLINE U8 GH_UART2_get_LCR_breaks(void)
  887. {
  888. GH_UART2_LCR_S tmp_value;
  889. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  890. tmp_value.all = value;
  891. #if GH_UART2_ENABLE_DEBUG_PRINT
  892. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR_breaks] --> 0x%08x\n",
  893. REG_UART2_LCR,value);
  894. #endif
  895. return tmp_value.bitc.breaks;
  896. }
  897. GH_INLINE void GH_UART2_set_LCR_dlab(U8 data)
  898. {
  899. GH_UART2_LCR_S d;
  900. d.all = *(volatile U32 *)REG_UART2_LCR;
  901. d.bitc.dlab = data;
  902. *(volatile U32 *)REG_UART2_LCR = d.all;
  903. #if GH_UART2_ENABLE_DEBUG_PRINT
  904. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_LCR_dlab] <-- 0x%08x\n",
  905. REG_UART2_LCR,d.all,d.all);
  906. #endif
  907. }
  908. GH_INLINE U8 GH_UART2_get_LCR_dlab(void)
  909. {
  910. GH_UART2_LCR_S tmp_value;
  911. U32 value = (*(volatile U32 *)REG_UART2_LCR);
  912. tmp_value.all = value;
  913. #if GH_UART2_ENABLE_DEBUG_PRINT
  914. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LCR_dlab] --> 0x%08x\n",
  915. REG_UART2_LCR,value);
  916. #endif
  917. return tmp_value.bitc.dlab;
  918. }
  919. #endif /* GH_INLINE_LEVEL == 0 */
  920. /*----------------------------------------------------------------------------*/
  921. /* register UART2_MCR (read/write) */
  922. /*----------------------------------------------------------------------------*/
  923. #if GH_INLINE_LEVEL == 0
  924. /*! \brief Writes the register 'UART2_MCR'. */
  925. void GH_UART2_set_MCR(U32 data);
  926. /*! \brief Reads the register 'UART2_MCR'. */
  927. U32 GH_UART2_get_MCR(void);
  928. /*! \brief Writes the bit group 'dtr' of register 'UART2_MCR'. */
  929. void GH_UART2_set_MCR_dtr(U8 data);
  930. /*! \brief Reads the bit group 'dtr' of register 'UART2_MCR'. */
  931. U8 GH_UART2_get_MCR_dtr(void);
  932. /*! \brief Writes the bit group 'rts' of register 'UART2_MCR'. */
  933. void GH_UART2_set_MCR_rts(U8 data);
  934. /*! \brief Reads the bit group 'rts' of register 'UART2_MCR'. */
  935. U8 GH_UART2_get_MCR_rts(void);
  936. /*! \brief Writes the bit group 'out1' of register 'UART2_MCR'. */
  937. void GH_UART2_set_MCR_out1(U8 data);
  938. /*! \brief Reads the bit group 'out1' of register 'UART2_MCR'. */
  939. U8 GH_UART2_get_MCR_out1(void);
  940. /*! \brief Writes the bit group 'out2' of register 'UART2_MCR'. */
  941. void GH_UART2_set_MCR_out2(U8 data);
  942. /*! \brief Reads the bit group 'out2' of register 'UART2_MCR'. */
  943. U8 GH_UART2_get_MCR_out2(void);
  944. /*! \brief Writes the bit group 'loopback' of register 'UART2_MCR'. */
  945. void GH_UART2_set_MCR_loopback(U8 data);
  946. /*! \brief Reads the bit group 'loopback' of register 'UART2_MCR'. */
  947. U8 GH_UART2_get_MCR_loopback(void);
  948. /*! \brief Writes the bit group 'afce' of register 'UART2_MCR'. */
  949. void GH_UART2_set_MCR_afce(U8 data);
  950. /*! \brief Reads the bit group 'afce' of register 'UART2_MCR'. */
  951. U8 GH_UART2_get_MCR_afce(void);
  952. /*! \brief Writes the bit group 'sire' of register 'UART2_MCR'. */
  953. void GH_UART2_set_MCR_sire(U8 data);
  954. /*! \brief Reads the bit group 'sire' of register 'UART2_MCR'. */
  955. U8 GH_UART2_get_MCR_sire(void);
  956. #else /* GH_INLINE_LEVEL == 0 */
  957. GH_INLINE void GH_UART2_set_MCR(U32 data)
  958. {
  959. *(volatile U32 *)REG_UART2_MCR = data;
  960. #if GH_UART2_ENABLE_DEBUG_PRINT
  961. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR] <-- 0x%08x\n",
  962. REG_UART2_MCR,data,data);
  963. #endif
  964. }
  965. GH_INLINE U32 GH_UART2_get_MCR(void)
  966. {
  967. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  968. #if GH_UART2_ENABLE_DEBUG_PRINT
  969. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR] --> 0x%08x\n",
  970. REG_UART2_MCR,value);
  971. #endif
  972. return value;
  973. }
  974. GH_INLINE void GH_UART2_set_MCR_dtr(U8 data)
  975. {
  976. GH_UART2_MCR_S d;
  977. d.all = *(volatile U32 *)REG_UART2_MCR;
  978. d.bitc.dtr = data;
  979. *(volatile U32 *)REG_UART2_MCR = d.all;
  980. #if GH_UART2_ENABLE_DEBUG_PRINT
  981. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR_dtr] <-- 0x%08x\n",
  982. REG_UART2_MCR,d.all,d.all);
  983. #endif
  984. }
  985. GH_INLINE U8 GH_UART2_get_MCR_dtr(void)
  986. {
  987. GH_UART2_MCR_S tmp_value;
  988. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  989. tmp_value.all = value;
  990. #if GH_UART2_ENABLE_DEBUG_PRINT
  991. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR_dtr] --> 0x%08x\n",
  992. REG_UART2_MCR,value);
  993. #endif
  994. return tmp_value.bitc.dtr;
  995. }
  996. GH_INLINE void GH_UART2_set_MCR_rts(U8 data)
  997. {
  998. GH_UART2_MCR_S d;
  999. d.all = *(volatile U32 *)REG_UART2_MCR;
  1000. d.bitc.rts = data;
  1001. *(volatile U32 *)REG_UART2_MCR = d.all;
  1002. #if GH_UART2_ENABLE_DEBUG_PRINT
  1003. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR_rts] <-- 0x%08x\n",
  1004. REG_UART2_MCR,d.all,d.all);
  1005. #endif
  1006. }
  1007. GH_INLINE U8 GH_UART2_get_MCR_rts(void)
  1008. {
  1009. GH_UART2_MCR_S tmp_value;
  1010. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  1011. tmp_value.all = value;
  1012. #if GH_UART2_ENABLE_DEBUG_PRINT
  1013. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR_rts] --> 0x%08x\n",
  1014. REG_UART2_MCR,value);
  1015. #endif
  1016. return tmp_value.bitc.rts;
  1017. }
  1018. GH_INLINE void GH_UART2_set_MCR_out1(U8 data)
  1019. {
  1020. GH_UART2_MCR_S d;
  1021. d.all = *(volatile U32 *)REG_UART2_MCR;
  1022. d.bitc.out1 = data;
  1023. *(volatile U32 *)REG_UART2_MCR = d.all;
  1024. #if GH_UART2_ENABLE_DEBUG_PRINT
  1025. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR_out1] <-- 0x%08x\n",
  1026. REG_UART2_MCR,d.all,d.all);
  1027. #endif
  1028. }
  1029. GH_INLINE U8 GH_UART2_get_MCR_out1(void)
  1030. {
  1031. GH_UART2_MCR_S tmp_value;
  1032. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  1033. tmp_value.all = value;
  1034. #if GH_UART2_ENABLE_DEBUG_PRINT
  1035. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR_out1] --> 0x%08x\n",
  1036. REG_UART2_MCR,value);
  1037. #endif
  1038. return tmp_value.bitc.out1;
  1039. }
  1040. GH_INLINE void GH_UART2_set_MCR_out2(U8 data)
  1041. {
  1042. GH_UART2_MCR_S d;
  1043. d.all = *(volatile U32 *)REG_UART2_MCR;
  1044. d.bitc.out2 = data;
  1045. *(volatile U32 *)REG_UART2_MCR = d.all;
  1046. #if GH_UART2_ENABLE_DEBUG_PRINT
  1047. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR_out2] <-- 0x%08x\n",
  1048. REG_UART2_MCR,d.all,d.all);
  1049. #endif
  1050. }
  1051. GH_INLINE U8 GH_UART2_get_MCR_out2(void)
  1052. {
  1053. GH_UART2_MCR_S tmp_value;
  1054. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  1055. tmp_value.all = value;
  1056. #if GH_UART2_ENABLE_DEBUG_PRINT
  1057. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR_out2] --> 0x%08x\n",
  1058. REG_UART2_MCR,value);
  1059. #endif
  1060. return tmp_value.bitc.out2;
  1061. }
  1062. GH_INLINE void GH_UART2_set_MCR_loopback(U8 data)
  1063. {
  1064. GH_UART2_MCR_S d;
  1065. d.all = *(volatile U32 *)REG_UART2_MCR;
  1066. d.bitc.loopback = data;
  1067. *(volatile U32 *)REG_UART2_MCR = d.all;
  1068. #if GH_UART2_ENABLE_DEBUG_PRINT
  1069. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR_loopback] <-- 0x%08x\n",
  1070. REG_UART2_MCR,d.all,d.all);
  1071. #endif
  1072. }
  1073. GH_INLINE U8 GH_UART2_get_MCR_loopback(void)
  1074. {
  1075. GH_UART2_MCR_S tmp_value;
  1076. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  1077. tmp_value.all = value;
  1078. #if GH_UART2_ENABLE_DEBUG_PRINT
  1079. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR_loopback] --> 0x%08x\n",
  1080. REG_UART2_MCR,value);
  1081. #endif
  1082. return tmp_value.bitc.loopback;
  1083. }
  1084. GH_INLINE void GH_UART2_set_MCR_afce(U8 data)
  1085. {
  1086. GH_UART2_MCR_S d;
  1087. d.all = *(volatile U32 *)REG_UART2_MCR;
  1088. d.bitc.afce = data;
  1089. *(volatile U32 *)REG_UART2_MCR = d.all;
  1090. #if GH_UART2_ENABLE_DEBUG_PRINT
  1091. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR_afce] <-- 0x%08x\n",
  1092. REG_UART2_MCR,d.all,d.all);
  1093. #endif
  1094. }
  1095. GH_INLINE U8 GH_UART2_get_MCR_afce(void)
  1096. {
  1097. GH_UART2_MCR_S tmp_value;
  1098. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  1099. tmp_value.all = value;
  1100. #if GH_UART2_ENABLE_DEBUG_PRINT
  1101. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR_afce] --> 0x%08x\n",
  1102. REG_UART2_MCR,value);
  1103. #endif
  1104. return tmp_value.bitc.afce;
  1105. }
  1106. GH_INLINE void GH_UART2_set_MCR_sire(U8 data)
  1107. {
  1108. GH_UART2_MCR_S d;
  1109. d.all = *(volatile U32 *)REG_UART2_MCR;
  1110. d.bitc.sire = data;
  1111. *(volatile U32 *)REG_UART2_MCR = d.all;
  1112. #if GH_UART2_ENABLE_DEBUG_PRINT
  1113. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_MCR_sire] <-- 0x%08x\n",
  1114. REG_UART2_MCR,d.all,d.all);
  1115. #endif
  1116. }
  1117. GH_INLINE U8 GH_UART2_get_MCR_sire(void)
  1118. {
  1119. GH_UART2_MCR_S tmp_value;
  1120. U32 value = (*(volatile U32 *)REG_UART2_MCR);
  1121. tmp_value.all = value;
  1122. #if GH_UART2_ENABLE_DEBUG_PRINT
  1123. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MCR_sire] --> 0x%08x\n",
  1124. REG_UART2_MCR,value);
  1125. #endif
  1126. return tmp_value.bitc.sire;
  1127. }
  1128. #endif /* GH_INLINE_LEVEL == 0 */
  1129. /*----------------------------------------------------------------------------*/
  1130. /* register UART2_LSR (read) */
  1131. /*----------------------------------------------------------------------------*/
  1132. #if GH_INLINE_LEVEL == 0
  1133. /*! \brief Reads the register 'UART2_LSR'. */
  1134. U32 GH_UART2_get_LSR(void);
  1135. /*! \brief Reads the bit group 'dr' of register 'UART2_LSR'. */
  1136. U8 GH_UART2_get_LSR_dr(void);
  1137. /*! \brief Reads the bit group 'oe' of register 'UART2_LSR'. */
  1138. U8 GH_UART2_get_LSR_oe(void);
  1139. /*! \brief Reads the bit group 'pe' of register 'UART2_LSR'. */
  1140. U8 GH_UART2_get_LSR_pe(void);
  1141. /*! \brief Reads the bit group 'fe' of register 'UART2_LSR'. */
  1142. U8 GH_UART2_get_LSR_fe(void);
  1143. /*! \brief Reads the bit group 'bi' of register 'UART2_LSR'. */
  1144. U8 GH_UART2_get_LSR_bi(void);
  1145. /*! \brief Reads the bit group 'temt' of register 'UART2_LSR'. */
  1146. U8 GH_UART2_get_LSR_temt(void);
  1147. #else /* GH_INLINE_LEVEL == 0 */
  1148. GH_INLINE U32 GH_UART2_get_LSR(void)
  1149. {
  1150. U32 value = (*(volatile U32 *)REG_UART2_LSR);
  1151. #if GH_UART2_ENABLE_DEBUG_PRINT
  1152. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LSR] --> 0x%08x\n",
  1153. REG_UART2_LSR,value);
  1154. #endif
  1155. return value;
  1156. }
  1157. GH_INLINE U8 GH_UART2_get_LSR_dr(void)
  1158. {
  1159. GH_UART2_LSR_S tmp_value;
  1160. U32 value = (*(volatile U32 *)REG_UART2_LSR);
  1161. tmp_value.all = value;
  1162. #if GH_UART2_ENABLE_DEBUG_PRINT
  1163. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LSR_dr] --> 0x%08x\n",
  1164. REG_UART2_LSR,value);
  1165. #endif
  1166. return tmp_value.bitc.dr;
  1167. }
  1168. GH_INLINE U8 GH_UART2_get_LSR_oe(void)
  1169. {
  1170. GH_UART2_LSR_S tmp_value;
  1171. U32 value = (*(volatile U32 *)REG_UART2_LSR);
  1172. tmp_value.all = value;
  1173. #if GH_UART2_ENABLE_DEBUG_PRINT
  1174. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LSR_oe] --> 0x%08x\n",
  1175. REG_UART2_LSR,value);
  1176. #endif
  1177. return tmp_value.bitc.oe;
  1178. }
  1179. GH_INLINE U8 GH_UART2_get_LSR_pe(void)
  1180. {
  1181. GH_UART2_LSR_S tmp_value;
  1182. U32 value = (*(volatile U32 *)REG_UART2_LSR);
  1183. tmp_value.all = value;
  1184. #if GH_UART2_ENABLE_DEBUG_PRINT
  1185. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LSR_pe] --> 0x%08x\n",
  1186. REG_UART2_LSR,value);
  1187. #endif
  1188. return tmp_value.bitc.pe;
  1189. }
  1190. GH_INLINE U8 GH_UART2_get_LSR_fe(void)
  1191. {
  1192. GH_UART2_LSR_S tmp_value;
  1193. U32 value = (*(volatile U32 *)REG_UART2_LSR);
  1194. tmp_value.all = value;
  1195. #if GH_UART2_ENABLE_DEBUG_PRINT
  1196. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LSR_fe] --> 0x%08x\n",
  1197. REG_UART2_LSR,value);
  1198. #endif
  1199. return tmp_value.bitc.fe;
  1200. }
  1201. GH_INLINE U8 GH_UART2_get_LSR_bi(void)
  1202. {
  1203. GH_UART2_LSR_S tmp_value;
  1204. U32 value = (*(volatile U32 *)REG_UART2_LSR);
  1205. tmp_value.all = value;
  1206. #if GH_UART2_ENABLE_DEBUG_PRINT
  1207. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LSR_bi] --> 0x%08x\n",
  1208. REG_UART2_LSR,value);
  1209. #endif
  1210. return tmp_value.bitc.bi;
  1211. }
  1212. GH_INLINE U8 GH_UART2_get_LSR_temt(void)
  1213. {
  1214. GH_UART2_LSR_S tmp_value;
  1215. U32 value = (*(volatile U32 *)REG_UART2_LSR);
  1216. tmp_value.all = value;
  1217. #if GH_UART2_ENABLE_DEBUG_PRINT
  1218. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_LSR_temt] --> 0x%08x\n",
  1219. REG_UART2_LSR,value);
  1220. #endif
  1221. return tmp_value.bitc.temt;
  1222. }
  1223. #endif /* GH_INLINE_LEVEL == 0 */
  1224. /*----------------------------------------------------------------------------*/
  1225. /* register UART2_MSR (read) */
  1226. /*----------------------------------------------------------------------------*/
  1227. #if GH_INLINE_LEVEL == 0
  1228. /*! \brief Reads the register 'UART2_MSR'. */
  1229. U32 GH_UART2_get_MSR(void);
  1230. /*! \brief Reads the bit group 'dcts' of register 'UART2_MSR'. */
  1231. U8 GH_UART2_get_MSR_dcts(void);
  1232. /*! \brief Reads the bit group 'ddsr' of register 'UART2_MSR'. */
  1233. U8 GH_UART2_get_MSR_ddsr(void);
  1234. /*! \brief Reads the bit group 'teri' of register 'UART2_MSR'. */
  1235. U8 GH_UART2_get_MSR_teri(void);
  1236. /*! \brief Reads the bit group 'ddcd' of register 'UART2_MSR'. */
  1237. U8 GH_UART2_get_MSR_ddcd(void);
  1238. /*! \brief Reads the bit group 'cts' of register 'UART2_MSR'. */
  1239. U8 GH_UART2_get_MSR_cts(void);
  1240. /*! \brief Reads the bit group 'dsr' of register 'UART2_MSR'. */
  1241. U8 GH_UART2_get_MSR_dsr(void);
  1242. /*! \brief Reads the bit group 'ri' of register 'UART2_MSR'. */
  1243. U8 GH_UART2_get_MSR_ri(void);
  1244. /*! \brief Reads the bit group 'dcd' of register 'UART2_MSR'. */
  1245. U8 GH_UART2_get_MSR_dcd(void);
  1246. #else /* GH_INLINE_LEVEL == 0 */
  1247. GH_INLINE U32 GH_UART2_get_MSR(void)
  1248. {
  1249. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1250. #if GH_UART2_ENABLE_DEBUG_PRINT
  1251. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR] --> 0x%08x\n",
  1252. REG_UART2_MSR,value);
  1253. #endif
  1254. return value;
  1255. }
  1256. GH_INLINE U8 GH_UART2_get_MSR_dcts(void)
  1257. {
  1258. GH_UART2_MSR_S tmp_value;
  1259. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1260. tmp_value.all = value;
  1261. #if GH_UART2_ENABLE_DEBUG_PRINT
  1262. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_dcts] --> 0x%08x\n",
  1263. REG_UART2_MSR,value);
  1264. #endif
  1265. return tmp_value.bitc.dcts;
  1266. }
  1267. GH_INLINE U8 GH_UART2_get_MSR_ddsr(void)
  1268. {
  1269. GH_UART2_MSR_S tmp_value;
  1270. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1271. tmp_value.all = value;
  1272. #if GH_UART2_ENABLE_DEBUG_PRINT
  1273. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_ddsr] --> 0x%08x\n",
  1274. REG_UART2_MSR,value);
  1275. #endif
  1276. return tmp_value.bitc.ddsr;
  1277. }
  1278. GH_INLINE U8 GH_UART2_get_MSR_teri(void)
  1279. {
  1280. GH_UART2_MSR_S tmp_value;
  1281. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1282. tmp_value.all = value;
  1283. #if GH_UART2_ENABLE_DEBUG_PRINT
  1284. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_teri] --> 0x%08x\n",
  1285. REG_UART2_MSR,value);
  1286. #endif
  1287. return tmp_value.bitc.teri;
  1288. }
  1289. GH_INLINE U8 GH_UART2_get_MSR_ddcd(void)
  1290. {
  1291. GH_UART2_MSR_S tmp_value;
  1292. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1293. tmp_value.all = value;
  1294. #if GH_UART2_ENABLE_DEBUG_PRINT
  1295. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_ddcd] --> 0x%08x\n",
  1296. REG_UART2_MSR,value);
  1297. #endif
  1298. return tmp_value.bitc.ddcd;
  1299. }
  1300. GH_INLINE U8 GH_UART2_get_MSR_cts(void)
  1301. {
  1302. GH_UART2_MSR_S tmp_value;
  1303. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1304. tmp_value.all = value;
  1305. #if GH_UART2_ENABLE_DEBUG_PRINT
  1306. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_cts] --> 0x%08x\n",
  1307. REG_UART2_MSR,value);
  1308. #endif
  1309. return tmp_value.bitc.cts;
  1310. }
  1311. GH_INLINE U8 GH_UART2_get_MSR_dsr(void)
  1312. {
  1313. GH_UART2_MSR_S tmp_value;
  1314. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1315. tmp_value.all = value;
  1316. #if GH_UART2_ENABLE_DEBUG_PRINT
  1317. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_dsr] --> 0x%08x\n",
  1318. REG_UART2_MSR,value);
  1319. #endif
  1320. return tmp_value.bitc.dsr;
  1321. }
  1322. GH_INLINE U8 GH_UART2_get_MSR_ri(void)
  1323. {
  1324. GH_UART2_MSR_S tmp_value;
  1325. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1326. tmp_value.all = value;
  1327. #if GH_UART2_ENABLE_DEBUG_PRINT
  1328. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_ri] --> 0x%08x\n",
  1329. REG_UART2_MSR,value);
  1330. #endif
  1331. return tmp_value.bitc.ri;
  1332. }
  1333. GH_INLINE U8 GH_UART2_get_MSR_dcd(void)
  1334. {
  1335. GH_UART2_MSR_S tmp_value;
  1336. U32 value = (*(volatile U32 *)REG_UART2_MSR);
  1337. tmp_value.all = value;
  1338. #if GH_UART2_ENABLE_DEBUG_PRINT
  1339. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_MSR_dcd] --> 0x%08x\n",
  1340. REG_UART2_MSR,value);
  1341. #endif
  1342. return tmp_value.bitc.dcd;
  1343. }
  1344. #endif /* GH_INLINE_LEVEL == 0 */
  1345. /*----------------------------------------------------------------------------*/
  1346. /* register UART2_SCR (read/write) */
  1347. /*----------------------------------------------------------------------------*/
  1348. #if GH_INLINE_LEVEL == 0
  1349. /*! \brief Writes the register 'UART2_SCR'. */
  1350. void GH_UART2_set_SCR(U32 data);
  1351. /*! \brief Reads the register 'UART2_SCR'. */
  1352. U32 GH_UART2_get_SCR(void);
  1353. /*! \brief Writes the bit group 'scr' of register 'UART2_SCR'. */
  1354. void GH_UART2_set_SCR_scr(U8 data);
  1355. /*! \brief Reads the bit group 'scr' of register 'UART2_SCR'. */
  1356. U8 GH_UART2_get_SCR_scr(void);
  1357. #else /* GH_INLINE_LEVEL == 0 */
  1358. GH_INLINE void GH_UART2_set_SCR(U32 data)
  1359. {
  1360. *(volatile U32 *)REG_UART2_SCR = data;
  1361. #if GH_UART2_ENABLE_DEBUG_PRINT
  1362. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_SCR] <-- 0x%08x\n",
  1363. REG_UART2_SCR,data,data);
  1364. #endif
  1365. }
  1366. GH_INLINE U32 GH_UART2_get_SCR(void)
  1367. {
  1368. U32 value = (*(volatile U32 *)REG_UART2_SCR);
  1369. #if GH_UART2_ENABLE_DEBUG_PRINT
  1370. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_SCR] --> 0x%08x\n",
  1371. REG_UART2_SCR,value);
  1372. #endif
  1373. return value;
  1374. }
  1375. GH_INLINE void GH_UART2_set_SCR_scr(U8 data)
  1376. {
  1377. GH_UART2_SCR_S d;
  1378. d.all = *(volatile U32 *)REG_UART2_SCR;
  1379. d.bitc.scr = data;
  1380. *(volatile U32 *)REG_UART2_SCR = d.all;
  1381. #if GH_UART2_ENABLE_DEBUG_PRINT
  1382. GH_UART2_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_UART2_set_SCR_scr] <-- 0x%08x\n",
  1383. REG_UART2_SCR,d.all,d.all);
  1384. #endif
  1385. }
  1386. GH_INLINE U8 GH_UART2_get_SCR_scr(void)
  1387. {
  1388. GH_UART2_SCR_S tmp_value;
  1389. U32 value = (*(volatile U32 *)REG_UART2_SCR);
  1390. tmp_value.all = value;
  1391. #if GH_UART2_ENABLE_DEBUG_PRINT
  1392. GH_UART2_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_UART2_get_SCR_scr] --> 0x%08x\n",
  1393. REG_UART2_SCR,value);
  1394. #endif
  1395. return tmp_value.bitc.scr;
  1396. }
  1397. #endif /* GH_INLINE_LEVEL == 0 */
  1398. /*----------------------------------------------------------------------------*/
  1399. /* init function */
  1400. /*----------------------------------------------------------------------------*/
  1401. /*! \brief Initialises the registers and mirror variables. */
  1402. void GH_UART2_init(void);
  1403. #ifdef __cplusplus
  1404. }
  1405. #endif
  1406. #endif /* _GH_UART2_H */
  1407. /*----------------------------------------------------------------------------*/
  1408. /* end of file */
  1409. /*----------------------------------------------------------------------------*/