gh_pmu_irr.h 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507
  1. /*!
  2. *******************************************************************************
  3. **
  4. ** \file gh_pmu_irr.h
  5. **
  6. ** \brief Infrared Receiver.
  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_PMU_IRR_H
  18. #define _GH_PMU_IRR_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_PMU_IRR_ENABLE_DEBUG_PRINT 0
  30. #ifdef __LINUX__
  31. #define GH_PMU_IRR_DEBUG_PRINT_FUNCTION printk
  32. #else
  33. #define GH_PMU_IRR_DEBUG_PRINT_FUNCTION printf
  34. #endif
  35. #ifndef __LINUX__
  36. #if GH_PMU_IRR_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_PMU_IRR_PROG FIO_ADDRESS(PMU_IRR,0x90082000) /* write */
  59. #define REG_PMU_IRR_PRESCALER_L FIO_ADDRESS(PMU_IRR,0x90082004) /* write */
  60. #define REG_PMU_IRR_PRESCALER_H FIO_ADDRESS(PMU_IRR,0x90082008) /* write */
  61. #define REG_PMU_IRR_READ FIO_ADDRESS(PMU_IRR,0x9008200C) /* read/clear */
  62. #define REG_PMU_IRR_IRQMASK_L FIO_ADDRESS(PMU_IRR,0x90082014) /* write */
  63. #define REG_PMU_IRR_IRQMASK_H FIO_ADDRESS(PMU_IRR,0x90082018) /* write */
  64. /*----------------------------------------------------------------------------*/
  65. /* bit group structures */
  66. /*----------------------------------------------------------------------------*/
  67. typedef union { /* PMU_IRR_Prog */
  68. U32 all;
  69. struct {
  70. U32 rx : 1;
  71. U32 rising_edge : 1;
  72. U32 falling_edge : 1;
  73. U32 restarts : 1;
  74. U32 : 28;
  75. } bitc;
  76. } GH_PMU_IRR_PROG_S;
  77. typedef union { /* PMU_IRR_PreScaler_l */
  78. U32 all;
  79. struct {
  80. U32 value : 8;
  81. U32 : 24;
  82. } bitc;
  83. } GH_PMU_IRR_PRESCALER_L_S;
  84. typedef union { /* PMU_IRR_PreScaler_h */
  85. U32 all;
  86. struct {
  87. U32 value : 8;
  88. U32 : 24;
  89. } bitc;
  90. } GH_PMU_IRR_PRESCALER_H_S;
  91. typedef union { /* PMU_IRR_Read */
  92. U32 all;
  93. struct {
  94. U32 pulse27 : 6;
  95. U32 edge : 1;
  96. U32 valid : 1;
  97. U32 : 24;
  98. } bitc;
  99. } GH_PMU_IRR_READ_S;
  100. typedef union { /* PMU_IRR_IrqMask_l */
  101. U32 all;
  102. struct {
  103. U32 value : 8;
  104. U32 : 24;
  105. } bitc;
  106. } GH_PMU_IRR_IRQMASK_L_S;
  107. typedef union { /* PMU_IRR_IrqMask_h */
  108. U32 all;
  109. struct {
  110. U32 value : 8;
  111. U32 : 24;
  112. } bitc;
  113. } GH_PMU_IRR_IRQMASK_H_S;
  114. /*----------------------------------------------------------------------------*/
  115. /* mirror variables */
  116. /*----------------------------------------------------------------------------*/
  117. extern GH_PMU_IRR_PROG_S m_pmu_irr_prog;
  118. extern GH_PMU_IRR_PRESCALER_L_S m_pmu_irr_prescaler_l;
  119. extern GH_PMU_IRR_PRESCALER_H_S m_pmu_irr_prescaler_h;
  120. extern GH_PMU_IRR_READ_S m_pmu_irr_read;
  121. extern GH_PMU_IRR_IRQMASK_L_S m_pmu_irr_irqmask_l;
  122. extern GH_PMU_IRR_IRQMASK_H_S m_pmu_irr_irqmask_h;
  123. #ifdef __cplusplus
  124. extern "C" {
  125. #endif
  126. /*----------------------------------------------------------------------------*/
  127. /* register PMU_IRR_Prog (write) */
  128. /*----------------------------------------------------------------------------*/
  129. #if GH_INLINE_LEVEL < 2
  130. /*! \brief Writes the register 'PMU_IRR_Prog'. */
  131. void GH_PMU_IRR_set_Prog(U32 data);
  132. /*! \brief Reads the mirror variable of the register 'PMU_IRR_Prog'. */
  133. U32 GH_PMU_IRR_getm_Prog(void);
  134. /*! \brief Writes the bit group 'RX' of register 'PMU_IRR_Prog'. */
  135. void GH_PMU_IRR_set_Prog_RX(U8 data);
  136. /*! \brief Reads the bit group 'RX' from the mirror variable of register 'PMU_IRR_Prog'. */
  137. U8 GH_PMU_IRR_getm_Prog_RX(void);
  138. /*! \brief Writes the bit group 'RISING_EDGE' of register 'PMU_IRR_Prog'. */
  139. void GH_PMU_IRR_set_Prog_RISING_EDGE(U8 data);
  140. /*! \brief Reads the bit group 'RISING_EDGE' from the mirror variable of register 'PMU_IRR_Prog'. */
  141. U8 GH_PMU_IRR_getm_Prog_RISING_EDGE(void);
  142. /*! \brief Writes the bit group 'FALLING_EDGE' of register 'PMU_IRR_Prog'. */
  143. void GH_PMU_IRR_set_Prog_FALLING_EDGE(U8 data);
  144. /*! \brief Reads the bit group 'FALLING_EDGE' from the mirror variable of register 'PMU_IRR_Prog'. */
  145. U8 GH_PMU_IRR_getm_Prog_FALLING_EDGE(void);
  146. /*! \brief Writes the bit group 'RESTARTS' of register 'PMU_IRR_Prog'. */
  147. void GH_PMU_IRR_set_Prog_RESTARTS(U8 data);
  148. /*! \brief Reads the bit group 'RESTARTS' from the mirror variable of register 'PMU_IRR_Prog'. */
  149. U8 GH_PMU_IRR_getm_Prog_RESTARTS(void);
  150. #else /* GH_INLINE_LEVEL < 2 */
  151. GH_INLINE void GH_PMU_IRR_set_Prog(U32 data)
  152. {
  153. m_pmu_irr_prog.all = data;
  154. *(volatile U32 *)REG_PMU_IRR_PROG = data;
  155. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  156. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_Prog] <-- 0x%08x\n",
  157. REG_PMU_IRR_PROG,data,data);
  158. #endif
  159. }
  160. GH_INLINE U32 GH_PMU_IRR_getm_Prog(void)
  161. {
  162. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  163. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_Prog] --> 0x%08x\n",
  164. m_pmu_irr_prog.all);
  165. #endif
  166. return m_pmu_irr_prog.all;
  167. }
  168. GH_INLINE void GH_PMU_IRR_set_Prog_RX(U8 data)
  169. {
  170. m_pmu_irr_prog.bitc.rx = data;
  171. *(volatile U32 *)REG_PMU_IRR_PROG = m_pmu_irr_prog.all;
  172. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  173. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_Prog_RX] <-- 0x%08x\n",
  174. REG_PMU_IRR_PROG,m_pmu_irr_prog.all,m_pmu_irr_prog.all);
  175. #endif
  176. }
  177. GH_INLINE U8 GH_PMU_IRR_getm_Prog_RX(void)
  178. {
  179. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  180. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_Prog_RX] --> 0x%08x\n",
  181. m_pmu_irr_prog.bitc.rx);
  182. #endif
  183. return m_pmu_irr_prog.bitc.rx;
  184. }
  185. GH_INLINE void GH_PMU_IRR_set_Prog_RISING_EDGE(U8 data)
  186. {
  187. m_pmu_irr_prog.bitc.rising_edge = data;
  188. *(volatile U32 *)REG_PMU_IRR_PROG = m_pmu_irr_prog.all;
  189. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  190. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_Prog_RISING_EDGE] <-- 0x%08x\n",
  191. REG_PMU_IRR_PROG,m_pmu_irr_prog.all,m_pmu_irr_prog.all);
  192. #endif
  193. }
  194. GH_INLINE U8 GH_PMU_IRR_getm_Prog_RISING_EDGE(void)
  195. {
  196. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  197. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_Prog_RISING_EDGE] --> 0x%08x\n",
  198. m_pmu_irr_prog.bitc.rising_edge);
  199. #endif
  200. return m_pmu_irr_prog.bitc.rising_edge;
  201. }
  202. GH_INLINE void GH_PMU_IRR_set_Prog_FALLING_EDGE(U8 data)
  203. {
  204. m_pmu_irr_prog.bitc.falling_edge = data;
  205. *(volatile U32 *)REG_PMU_IRR_PROG = m_pmu_irr_prog.all;
  206. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  207. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_Prog_FALLING_EDGE] <-- 0x%08x\n",
  208. REG_PMU_IRR_PROG,m_pmu_irr_prog.all,m_pmu_irr_prog.all);
  209. #endif
  210. }
  211. GH_INLINE U8 GH_PMU_IRR_getm_Prog_FALLING_EDGE(void)
  212. {
  213. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  214. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_Prog_FALLING_EDGE] --> 0x%08x\n",
  215. m_pmu_irr_prog.bitc.falling_edge);
  216. #endif
  217. return m_pmu_irr_prog.bitc.falling_edge;
  218. }
  219. GH_INLINE void GH_PMU_IRR_set_Prog_RESTARTS(U8 data)
  220. {
  221. m_pmu_irr_prog.bitc.restarts = data;
  222. *(volatile U32 *)REG_PMU_IRR_PROG = m_pmu_irr_prog.all;
  223. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  224. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_Prog_RESTARTS] <-- 0x%08x\n",
  225. REG_PMU_IRR_PROG,m_pmu_irr_prog.all,m_pmu_irr_prog.all);
  226. #endif
  227. }
  228. GH_INLINE U8 GH_PMU_IRR_getm_Prog_RESTARTS(void)
  229. {
  230. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  231. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_Prog_RESTARTS] --> 0x%08x\n",
  232. m_pmu_irr_prog.bitc.restarts);
  233. #endif
  234. return m_pmu_irr_prog.bitc.restarts;
  235. }
  236. #endif /* GH_INLINE_LEVEL < 2 */
  237. /*----------------------------------------------------------------------------*/
  238. /* register PMU_IRR_PreScaler_l (write) */
  239. /*----------------------------------------------------------------------------*/
  240. #if GH_INLINE_LEVEL < 2
  241. /*! \brief Writes the register 'PMU_IRR_PreScaler_l'. */
  242. void GH_PMU_IRR_set_PreScaler_l(U32 data);
  243. /*! \brief Reads the mirror variable of the register 'PMU_IRR_PreScaler_l'. */
  244. U32 GH_PMU_IRR_getm_PreScaler_l(void);
  245. /*! \brief Writes the bit group 'VALUE' of register 'PMU_IRR_PreScaler_l'. */
  246. void GH_PMU_IRR_set_PreScaler_l_VALUE(U8 data);
  247. /*! \brief Reads the bit group 'VALUE' from the mirror variable of register 'PMU_IRR_PreScaler_l'. */
  248. U8 GH_PMU_IRR_getm_PreScaler_l_VALUE(void);
  249. #else /* GH_INLINE_LEVEL < 2 */
  250. GH_INLINE void GH_PMU_IRR_set_PreScaler_l(U32 data)
  251. {
  252. m_pmu_irr_prescaler_l.all = data;
  253. *(volatile U32 *)REG_PMU_IRR_PRESCALER_L = data;
  254. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  255. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_PreScaler_l] <-- 0x%08x\n",
  256. REG_PMU_IRR_PRESCALER_L,data,data);
  257. #endif
  258. }
  259. GH_INLINE U32 GH_PMU_IRR_getm_PreScaler_l(void)
  260. {
  261. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  262. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_PreScaler_l] --> 0x%08x\n",
  263. m_pmu_irr_prescaler_l.all);
  264. #endif
  265. return m_pmu_irr_prescaler_l.all;
  266. }
  267. GH_INLINE void GH_PMU_IRR_set_PreScaler_l_VALUE(U8 data)
  268. {
  269. m_pmu_irr_prescaler_l.bitc.value = data;
  270. *(volatile U32 *)REG_PMU_IRR_PRESCALER_L = m_pmu_irr_prescaler_l.all;
  271. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  272. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_PreScaler_l_VALUE] <-- 0x%08x\n",
  273. REG_PMU_IRR_PRESCALER_L,m_pmu_irr_prescaler_l.all,m_pmu_irr_prescaler_l.all);
  274. #endif
  275. }
  276. GH_INLINE U8 GH_PMU_IRR_getm_PreScaler_l_VALUE(void)
  277. {
  278. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  279. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_PreScaler_l_VALUE] --> 0x%08x\n",
  280. m_pmu_irr_prescaler_l.bitc.value);
  281. #endif
  282. return m_pmu_irr_prescaler_l.bitc.value;
  283. }
  284. #endif /* GH_INLINE_LEVEL < 2 */
  285. /*----------------------------------------------------------------------------*/
  286. /* register PMU_IRR_PreScaler_h (write) */
  287. /*----------------------------------------------------------------------------*/
  288. #if GH_INLINE_LEVEL < 2
  289. /*! \brief Writes the register 'PMU_IRR_PreScaler_h'. */
  290. void GH_PMU_IRR_set_PreScaler_h(U32 data);
  291. /*! \brief Reads the mirror variable of the register 'PMU_IRR_PreScaler_h'. */
  292. U32 GH_PMU_IRR_getm_PreScaler_h(void);
  293. /*! \brief Writes the bit group 'VALUE' of register 'PMU_IRR_PreScaler_h'. */
  294. void GH_PMU_IRR_set_PreScaler_h_VALUE(U8 data);
  295. /*! \brief Reads the bit group 'VALUE' from the mirror variable of register 'PMU_IRR_PreScaler_h'. */
  296. U8 GH_PMU_IRR_getm_PreScaler_h_VALUE(void);
  297. #else /* GH_INLINE_LEVEL < 2 */
  298. GH_INLINE void GH_PMU_IRR_set_PreScaler_h(U32 data)
  299. {
  300. m_pmu_irr_prescaler_h.all = data;
  301. *(volatile U32 *)REG_PMU_IRR_PRESCALER_H = data;
  302. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  303. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_PreScaler_h] <-- 0x%08x\n",
  304. REG_PMU_IRR_PRESCALER_H,data,data);
  305. #endif
  306. }
  307. GH_INLINE U32 GH_PMU_IRR_getm_PreScaler_h(void)
  308. {
  309. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  310. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_PreScaler_h] --> 0x%08x\n",
  311. m_pmu_irr_prescaler_h.all);
  312. #endif
  313. return m_pmu_irr_prescaler_h.all;
  314. }
  315. GH_INLINE void GH_PMU_IRR_set_PreScaler_h_VALUE(U8 data)
  316. {
  317. m_pmu_irr_prescaler_h.bitc.value = data;
  318. *(volatile U32 *)REG_PMU_IRR_PRESCALER_H = m_pmu_irr_prescaler_h.all;
  319. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  320. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_PreScaler_h_VALUE] <-- 0x%08x\n",
  321. REG_PMU_IRR_PRESCALER_H,m_pmu_irr_prescaler_h.all,m_pmu_irr_prescaler_h.all);
  322. #endif
  323. }
  324. GH_INLINE U8 GH_PMU_IRR_getm_PreScaler_h_VALUE(void)
  325. {
  326. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  327. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_PreScaler_h_VALUE] --> 0x%08x\n",
  328. m_pmu_irr_prescaler_h.bitc.value);
  329. #endif
  330. return m_pmu_irr_prescaler_h.bitc.value;
  331. }
  332. #endif /* GH_INLINE_LEVEL < 2 */
  333. /*----------------------------------------------------------------------------*/
  334. /* register PMU_IRR_Read (read/clear) */
  335. /*----------------------------------------------------------------------------*/
  336. #if GH_INLINE_LEVEL < 2
  337. /*! \brief Writes the register 'PMU_IRR_Read'. */
  338. U32 GH_PMU_IRR_get_Read(void);
  339. /*! \brief Reads the mirror variable of the register 'PMU_IRR_Read'. */
  340. U32 GH_PMU_IRR_getm_Read(void);
  341. /*! \brief Reads the bit group 'PULSE27' from the mirror variable of register 'PMU_IRR_Read'. */
  342. U8 GH_PMU_IRR_getm_Read_PULSE27(void);
  343. /*! \brief Reads the bit group 'EDGE' from the mirror variable of register 'PMU_IRR_Read'. */
  344. U8 GH_PMU_IRR_getm_Read_EDGE(void);
  345. /*! \brief Reads the bit group 'VALID' from the mirror variable of register 'PMU_IRR_Read'. */
  346. U8 GH_PMU_IRR_getm_Read_VALID(void);
  347. #else /* GH_INLINE_LEVEL < 2 */
  348. GH_INLINE U32 GH_PMU_IRR_get_Read(void)
  349. {
  350. m_pmu_irr_read.all = *(volatile U32 *)REG_PMU_IRR_READ;
  351. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  352. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "value = RDREG(0x%08x); \\\\ [GH_PMU_IRR_get_Read] --> 0x%08x\n",
  353. REG_PMU_IRR_READ,m_pmu_irr_read.all );
  354. #endif
  355. return m_pmu_irr_read.all;
  356. }
  357. GH_INLINE U32 GH_PMU_IRR_getm_Read(void)
  358. {
  359. return m_pmu_irr_read.all;
  360. }
  361. GH_INLINE U8 GH_PMU_IRR_getm_Read_PULSE27(void)
  362. {
  363. return m_pmu_irr_read.bitc.pulse27;
  364. }
  365. GH_INLINE U8 GH_PMU_IRR_getm_Read_EDGE(void)
  366. {
  367. return m_pmu_irr_read.bitc.edge;
  368. }
  369. GH_INLINE U8 GH_PMU_IRR_getm_Read_VALID(void)
  370. {
  371. return m_pmu_irr_read.bitc.valid;
  372. }
  373. #endif /* GH_INLINE_LEVEL < 2 */
  374. /*----------------------------------------------------------------------------*/
  375. /* register PMU_IRR_IrqMask_l (write) */
  376. /*----------------------------------------------------------------------------*/
  377. #if GH_INLINE_LEVEL < 2
  378. /*! \brief Writes the register 'PMU_IRR_IrqMask_l'. */
  379. void GH_PMU_IRR_set_IrqMask_l(U32 data);
  380. /*! \brief Reads the mirror variable of the register 'PMU_IRR_IrqMask_l'. */
  381. U32 GH_PMU_IRR_getm_IrqMask_l(void);
  382. /*! \brief Writes the bit group 'VALUE' of register 'PMU_IRR_IrqMask_l'. */
  383. void GH_PMU_IRR_set_IrqMask_l_VALUE(U8 data);
  384. /*! \brief Reads the bit group 'VALUE' from the mirror variable of register 'PMU_IRR_IrqMask_l'. */
  385. U8 GH_PMU_IRR_getm_IrqMask_l_VALUE(void);
  386. #else /* GH_INLINE_LEVEL < 2 */
  387. GH_INLINE void GH_PMU_IRR_set_IrqMask_l(U32 data)
  388. {
  389. m_pmu_irr_irqmask_l.all = data;
  390. *(volatile U32 *)REG_PMU_IRR_IRQMASK_L = data;
  391. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  392. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_IrqMask_l] <-- 0x%08x\n",
  393. REG_PMU_IRR_IRQMASK_L,data,data);
  394. #endif
  395. }
  396. GH_INLINE U32 GH_PMU_IRR_getm_IrqMask_l(void)
  397. {
  398. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  399. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_IrqMask_l] --> 0x%08x\n",
  400. m_pmu_irr_irqmask_l.all);
  401. #endif
  402. return m_pmu_irr_irqmask_l.all;
  403. }
  404. GH_INLINE void GH_PMU_IRR_set_IrqMask_l_VALUE(U8 data)
  405. {
  406. m_pmu_irr_irqmask_l.bitc.value = data;
  407. *(volatile U32 *)REG_PMU_IRR_IRQMASK_L = m_pmu_irr_irqmask_l.all;
  408. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  409. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_IrqMask_l_VALUE] <-- 0x%08x\n",
  410. REG_PMU_IRR_IRQMASK_L,m_pmu_irr_irqmask_l.all,m_pmu_irr_irqmask_l.all);
  411. #endif
  412. }
  413. GH_INLINE U8 GH_PMU_IRR_getm_IrqMask_l_VALUE(void)
  414. {
  415. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  416. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_IrqMask_l_VALUE] --> 0x%08x\n",
  417. m_pmu_irr_irqmask_l.bitc.value);
  418. #endif
  419. return m_pmu_irr_irqmask_l.bitc.value;
  420. }
  421. #endif /* GH_INLINE_LEVEL < 2 */
  422. /*----------------------------------------------------------------------------*/
  423. /* register PMU_IRR_IrqMask_h (write) */
  424. /*----------------------------------------------------------------------------*/
  425. #if GH_INLINE_LEVEL < 2
  426. /*! \brief Writes the register 'PMU_IRR_IrqMask_h'. */
  427. void GH_PMU_IRR_set_IrqMask_h(U32 data);
  428. /*! \brief Reads the mirror variable of the register 'PMU_IRR_IrqMask_h'. */
  429. U32 GH_PMU_IRR_getm_IrqMask_h(void);
  430. /*! \brief Writes the bit group 'VALUE' of register 'PMU_IRR_IrqMask_h'. */
  431. void GH_PMU_IRR_set_IrqMask_h_VALUE(U8 data);
  432. /*! \brief Reads the bit group 'VALUE' from the mirror variable of register 'PMU_IRR_IrqMask_h'. */
  433. U8 GH_PMU_IRR_getm_IrqMask_h_VALUE(void);
  434. #else /* GH_INLINE_LEVEL < 2 */
  435. GH_INLINE void GH_PMU_IRR_set_IrqMask_h(U32 data)
  436. {
  437. m_pmu_irr_irqmask_h.all = data;
  438. *(volatile U32 *)REG_PMU_IRR_IRQMASK_H = data;
  439. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  440. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_IrqMask_h] <-- 0x%08x\n",
  441. REG_PMU_IRR_IRQMASK_H,data,data);
  442. #endif
  443. }
  444. GH_INLINE U32 GH_PMU_IRR_getm_IrqMask_h(void)
  445. {
  446. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  447. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_IrqMask_h] --> 0x%08x\n",
  448. m_pmu_irr_irqmask_h.all);
  449. #endif
  450. return m_pmu_irr_irqmask_h.all;
  451. }
  452. GH_INLINE void GH_PMU_IRR_set_IrqMask_h_VALUE(U8 data)
  453. {
  454. m_pmu_irr_irqmask_h.bitc.value = data;
  455. *(volatile U32 *)REG_PMU_IRR_IRQMASK_H = m_pmu_irr_irqmask_h.all;
  456. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  457. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "WRREG(0x%08x,0x%08x); \\\\ [GH_PMU_IRR_set_IrqMask_h_VALUE] <-- 0x%08x\n",
  458. REG_PMU_IRR_IRQMASK_H,m_pmu_irr_irqmask_h.all,m_pmu_irr_irqmask_h.all);
  459. #endif
  460. }
  461. GH_INLINE U8 GH_PMU_IRR_getm_IrqMask_h_VALUE(void)
  462. {
  463. #if GH_PMU_IRR_ENABLE_DEBUG_PRINT
  464. GH_PMU_IRR_DEBUG_PRINT_FUNCTION( "[GH_PMU_IRR_getm_IrqMask_h_VALUE] --> 0x%08x\n",
  465. m_pmu_irr_irqmask_h.bitc.value);
  466. #endif
  467. return m_pmu_irr_irqmask_h.bitc.value;
  468. }
  469. #endif /* GH_INLINE_LEVEL < 2 */
  470. /*----------------------------------------------------------------------------*/
  471. /* init function */
  472. /*----------------------------------------------------------------------------*/
  473. /*! \brief Initialises the registers and mirror variables. */
  474. void GH_PMU_IRR_init(void);
  475. #ifdef __cplusplus
  476. }
  477. #endif
  478. #endif /* _GH_PMU_IRR_H */
  479. /*----------------------------------------------------------------------------*/
  480. /* end of file */
  481. /*----------------------------------------------------------------------------*/