wm_tipc.h 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284
  1. #ifndef __WM_TIPC_H_
  2. #define __WM_TIPC_H_
  3. #include <core_804.h>
  4. #include "wm_regs.h"
  5. #define HR_TIPC_BASE (HR_APB_BASE_ADDR + 0x2400)
  6. typedef union {
  7. struct {
  8. uint32_t I2C: 1; /*!< bit: 0 */
  9. uint32_t SAR_ADC: 1; /*!< bit: 1 */
  10. uint32_t SPI_LS: 1; /*!< bit: 2 */
  11. uint32_t UART0: 1; /*!< bit: 3 */
  12. uint32_t UART1: 1; /*!< bit: 4 */
  13. uint32_t UART2: 1; /*!< bit: 5 */
  14. uint32_t UART3: 1; /*!< bit: 6 */
  15. uint32_t UART4: 1; /*!< bit: 7 */
  16. uint32_t UART5: 1; /*!< bit: 8 */
  17. uint32_t PORTA: 1; /*!< bit: 9 */
  18. uint32_t PORTB: 1; /*!< bit: 10 */
  19. uint32_t WD: 1; /*!< bit: 11 */
  20. uint32_t TIMER: 1; /*!< bit: 12 */
  21. uint32_t RFC: 1; /*!< bit: 13 */
  22. uint32_t LCD: 1; /*!< bit: 14 */
  23. uint32_t PWM: 1; /*!< bit: 15 */
  24. uint32_t I2S: 1; /*!< bit: 16 */
  25. uint32_t BT_MODEM: 1; /*!< bit: 17 */
  26. uint32_t _reserved0: 14;
  27. }b;
  28. uint32_t w;
  29. } TIPC_VLD0_Type;
  30. typedef union {
  31. struct {
  32. uint32_t SDIO_HOST: 1; /*!< bit: 0 */
  33. uint32_t FLASH: 1; /*!< bit: 1 */
  34. uint32_t PSRAM: 1; /*!< bit: 2 */
  35. uint32_t RSA: 1; /*!< bit: 3 */
  36. uint32_t DMA: 1; /*!< bit: 4 */
  37. uint32_t GPSEC: 1; /*!< bit: 5 */
  38. uint32_t BT: 1; /*!< bit: 6 */
  39. uint32_t PMU: 1; /*!< bit: 7 */
  40. uint32_t CLK_RST: 1; /*!< bit: 8 */
  41. uint32_t MMU: 1; /*!< bit: 9 */
  42. uint32_t BBP: 1; /*!< bit: 10 */
  43. uint32_t MAC: 1; /*!< bit: 11 */
  44. uint32_t SEC: 1; /*!< bit: 12 */
  45. uint32_t _reserved0: 1; /*!< bit: 13 */
  46. uint32_t SDIO_SLAVE: 1; /*!< bit: 14 */
  47. uint32_t SPI_HS: 1; /*!< bit: 15 */
  48. uint32_t SDIO_WRAPPER: 1; /*!< bit: 16 */
  49. uint32_t RF_BIST: 1; /*!< bit: 17 */
  50. uint32_t _reserved1: 14;
  51. }b;
  52. uint32_t w;
  53. } TIPC_VLD1_Type;
  54. typedef struct {
  55. __IOM uint32_t VLD0;
  56. __IOM uint32_t VLD1;
  57. } TIPC_Type;
  58. #define TIPC ((TIPC_Type *) HR_TIPC_BASE)
  59. /**
  60. * @defgroup Driver_APIs Driver APIs
  61. * @brief Driver APIs
  62. */
  63. /**
  64. * @addtogroup Driver_APIs
  65. * @{
  66. */
  67. /**
  68. * @defgroup TIPC_Driver_APIs TIPC Driver APIs
  69. * @brief TIPC driver APIs
  70. */
  71. /**
  72. * @addtogroup TIPC_Driver_APIs
  73. * @{
  74. */
  75. /**
  76. * @brief This function is used enable i2c.
  77. *
  78. * @param[in] None
  79. *
  80. * @return None
  81. *
  82. * @note None
  83. */
  84. __STATIC_INLINE void wm_tipc_enable_i2c(void)
  85. {
  86. TIPC_VLD0_Type vld0;
  87. vld0.w = TIPC->VLD0;
  88. vld0.b.I2C = 1;
  89. TIPC->VLD0 = vld0.w;
  90. }
  91. /**
  92. * @brief This function is used disable i2c.
  93. *
  94. * @param[in] None
  95. *
  96. * @return None
  97. *
  98. * @note None
  99. */
  100. __STATIC_INLINE void wm_tipc_disable_i2c(void)
  101. {
  102. TIPC_VLD0_Type vld0;
  103. vld0.w = TIPC->VLD0;
  104. vld0.b.I2C = 0;
  105. TIPC->VLD0 = vld0.w;
  106. }
  107. /**
  108. * @brief This function is used enable uart0.
  109. *
  110. * @param[in] None
  111. *
  112. * @return None
  113. *
  114. * @note None
  115. */
  116. __STATIC_INLINE void wm_tipc_enable_uart0(void)
  117. {
  118. TIPC_VLD0_Type vld0;
  119. vld0.w = TIPC->VLD0;
  120. vld0.b.UART0 = 1;
  121. TIPC->VLD0 = vld0.w;
  122. }
  123. /**
  124. * @brief This function is used disable uart0.
  125. *
  126. * @param[in] None
  127. *
  128. * @return None
  129. *
  130. * @note None
  131. */
  132. __STATIC_INLINE void wm_tipc_disable_uart0(void)
  133. {
  134. TIPC_VLD0_Type vld0;
  135. vld0.w = TIPC->VLD0;
  136. vld0.b.UART0 = 0;
  137. TIPC->VLD0 = vld0.w;
  138. }
  139. /**
  140. * @brief This function is used enable sar adc.
  141. *
  142. * @param[in] None
  143. *
  144. * @return None
  145. *
  146. * @note None
  147. */
  148. __STATIC_INLINE void wm_tipc_enable_sar_adc(void)
  149. {
  150. TIPC_VLD0_Type vld0;
  151. vld0.w = TIPC->VLD0;
  152. vld0.b.SAR_ADC = 1;
  153. TIPC->VLD0 = vld0.w;
  154. }
  155. /**
  156. * @brief This function is used disable sar adc.
  157. *
  158. * @param[in] None
  159. *
  160. * @return None
  161. *
  162. * @note None
  163. */
  164. __STATIC_INLINE void wm_tipc_disable_sar_adc(void)
  165. {
  166. TIPC_VLD0_Type vld0;
  167. vld0.w = TIPC->VLD0;
  168. vld0.b.SAR_ADC = 0;
  169. TIPC->VLD0 = vld0.w;
  170. }
  171. /**
  172. * @brief This function is used enable low speed spi.
  173. *
  174. * @param[in] None
  175. *
  176. * @return None
  177. *
  178. * @note None
  179. */
  180. __STATIC_INLINE void wm_tipc_enable_lspi(void)
  181. {
  182. TIPC_VLD0_Type vld0;
  183. vld0.w = TIPC->VLD0;
  184. vld0.b.SPI_LS = 1;
  185. TIPC->VLD0 = vld0.w;
  186. }
  187. /**
  188. * @brief This function is used disable low speed spi.
  189. *
  190. * @param[in] None
  191. *
  192. * @return None
  193. *
  194. * @note None
  195. */
  196. __STATIC_INLINE void wm_tipc_disable_lspi(void)
  197. {
  198. TIPC_VLD0_Type vld0;
  199. vld0.w = TIPC->VLD0;
  200. vld0.b.SPI_LS = 0;
  201. TIPC->VLD0 = vld0.w;
  202. }
  203. /**
  204. * @brief This function is used enable uart1.
  205. *
  206. * @param[in] None
  207. *
  208. * @return None
  209. *
  210. * @note None
  211. */
  212. __STATIC_INLINE void wm_tipc_enable_uart1(void)
  213. {
  214. TIPC_VLD0_Type vld0;
  215. vld0.w = TIPC->VLD0;
  216. vld0.b.UART1 = 1;
  217. TIPC->VLD0 = vld0.w;
  218. }
  219. /**
  220. * @brief This function is used disable uart1.
  221. *
  222. * @param[in] None
  223. *
  224. * @return None
  225. *
  226. * @note None
  227. */
  228. __STATIC_INLINE void wm_tipc_disable_uart1(void)
  229. {
  230. TIPC_VLD0_Type vld0;
  231. vld0.w = TIPC->VLD0;
  232. vld0.b.UART1 = 0;
  233. TIPC->VLD0 = vld0.w;
  234. }
  235. /**
  236. * @brief This function is used enable uart2.
  237. *
  238. * @param[in] None
  239. *
  240. * @return None
  241. *
  242. * @note None
  243. */
  244. __STATIC_INLINE void wm_tipc_enable_uart2(void)
  245. {
  246. TIPC_VLD0_Type vld0;
  247. vld0.w = TIPC->VLD0;
  248. vld0.b.UART2 = 1;
  249. TIPC->VLD0 = vld0.w;
  250. }
  251. /**
  252. * @brief This function is used disable uart2.
  253. *
  254. * @param[in] None
  255. *
  256. * @return None
  257. *
  258. * @note None
  259. */
  260. __STATIC_INLINE void wm_tipc_disable_uart2(void)
  261. {
  262. TIPC_VLD0_Type vld0;
  263. vld0.w = TIPC->VLD0;
  264. vld0.b.UART2 = 0;
  265. TIPC->VLD0 = vld0.w;
  266. }
  267. /**
  268. * @brief This function is used enable uart3.
  269. *
  270. * @param[in] None
  271. *
  272. * @return None
  273. *
  274. * @note None
  275. */
  276. __STATIC_INLINE void wm_tipc_enable_uart3(void)
  277. {
  278. TIPC_VLD0_Type vld0;
  279. vld0.w = TIPC->VLD0;
  280. vld0.b.UART3 = 1;
  281. TIPC->VLD0 = vld0.w;
  282. }
  283. /**
  284. * @brief This function is used disable uart3.
  285. *
  286. * @param[in] None
  287. *
  288. * @return None
  289. *
  290. * @note None
  291. */
  292. __STATIC_INLINE void wm_tipc_disable_uart3(void)
  293. {
  294. TIPC_VLD0_Type vld0;
  295. vld0.w = TIPC->VLD0;
  296. vld0.b.UART3 = 0;
  297. TIPC->VLD0 = vld0.w;
  298. }
  299. /**
  300. * @brief This function is used enable uart4.
  301. *
  302. * @param[in] None
  303. *
  304. * @return None
  305. *
  306. * @note None
  307. */
  308. __STATIC_INLINE void wm_tipc_enable_uart4(void)
  309. {
  310. TIPC_VLD0_Type vld0;
  311. vld0.w = TIPC->VLD0;
  312. vld0.b.UART4 = 1;
  313. TIPC->VLD0 = vld0.w;
  314. }
  315. /**
  316. * @brief This function is used disable uart4.
  317. *
  318. * @param[in] None
  319. *
  320. * @return None
  321. *
  322. * @note None
  323. */
  324. __STATIC_INLINE void wm_tipc_disable_uart4(void)
  325. {
  326. TIPC_VLD0_Type vld0;
  327. vld0.w = TIPC->VLD0;
  328. vld0.b.UART4 = 0;
  329. TIPC->VLD0 = vld0.w;
  330. }
  331. /**
  332. * @brief This function is used enable uart5.
  333. *
  334. * @param[in] None
  335. *
  336. * @return None
  337. *
  338. * @note None
  339. */
  340. __STATIC_INLINE void wm_tipc_enable_uart5(void)
  341. {
  342. TIPC_VLD0_Type vld0;
  343. vld0.w = TIPC->VLD0;
  344. vld0.b.UART5 = 1;
  345. TIPC->VLD0 = vld0.w;
  346. }
  347. /**
  348. * @brief This function is used disable uart5.
  349. *
  350. * @param[in] None
  351. *
  352. * @return None
  353. *
  354. * @note None
  355. */
  356. __STATIC_INLINE void wm_tipc_disable_uart5(void)
  357. {
  358. TIPC_VLD0_Type vld0;
  359. vld0.w = TIPC->VLD0;
  360. vld0.b.UART5 = 0;
  361. TIPC->VLD0 = vld0.w;
  362. }
  363. /**
  364. * @brief This function is used enable porta.
  365. *
  366. * @param[in] None
  367. *
  368. * @return None
  369. *
  370. * @note None
  371. */
  372. __STATIC_INLINE void wm_tipc_enable_porta(void)
  373. {
  374. TIPC_VLD0_Type vld0;
  375. vld0.w = TIPC->VLD0;
  376. vld0.b.PORTA = 1;
  377. TIPC->VLD0 = vld0.w;
  378. }
  379. /**
  380. * @brief This function is used disable porta.
  381. *
  382. * @param[in] None
  383. *
  384. * @return None
  385. *
  386. * @note None
  387. */
  388. __STATIC_INLINE void wm_tipc_disable_porta(void)
  389. {
  390. TIPC_VLD0_Type vld0;
  391. vld0.w = TIPC->VLD0;
  392. vld0.b.PORTA = 0;
  393. TIPC->VLD0 = vld0.w;
  394. }
  395. /**
  396. * @brief This function is used enable portb.
  397. *
  398. * @param[in] None
  399. *
  400. * @return None
  401. *
  402. * @note None
  403. */
  404. __STATIC_INLINE void wm_tipc_enable_portb(void)
  405. {
  406. TIPC_VLD0_Type vld0;
  407. vld0.w = TIPC->VLD0;
  408. vld0.b.PORTB = 1;
  409. TIPC->VLD0 = vld0.w;
  410. }
  411. /**
  412. * @brief This function is used disable portb.
  413. *
  414. * @param[in] None
  415. *
  416. * @return None
  417. *
  418. * @note None
  419. */
  420. __STATIC_INLINE void wm_tipc_disable_portb(void)
  421. {
  422. TIPC_VLD0_Type vld0;
  423. vld0.w = TIPC->VLD0;
  424. vld0.b.PORTB = 0;
  425. TIPC->VLD0 = vld0.w;
  426. }
  427. /**
  428. * @brief This function is used enable watch dog.
  429. *
  430. * @param[in] None
  431. *
  432. * @return None
  433. *
  434. * @note None
  435. */
  436. __STATIC_INLINE void wm_tipc_enable_watch_dog(void)
  437. {
  438. TIPC_VLD0_Type vld0;
  439. vld0.w = TIPC->VLD0;
  440. vld0.b.WD = 1;
  441. TIPC->VLD0 = vld0.w;
  442. }
  443. /**
  444. * @brief This function is used disable watch dog.
  445. *
  446. * @param[in] None
  447. *
  448. * @return None
  449. *
  450. * @note None
  451. */
  452. __STATIC_INLINE void wm_tipc_disable_watch_dog(void)
  453. {
  454. TIPC_VLD0_Type vld0;
  455. vld0.w = TIPC->VLD0;
  456. vld0.b.WD = 0;
  457. TIPC->VLD0 = vld0.w;
  458. }
  459. /**
  460. * @brief This function is used enable timer.
  461. *
  462. * @param[in] None
  463. *
  464. * @return None
  465. *
  466. * @note None
  467. */
  468. __STATIC_INLINE void wm_tipc_enable_timer(void)
  469. {
  470. TIPC_VLD0_Type vld0;
  471. vld0.w = TIPC->VLD0;
  472. vld0.b.TIMER = 1;
  473. TIPC->VLD0 = vld0.w;
  474. }
  475. /**
  476. * @brief This function is used disable timer.
  477. *
  478. * @param[in] None
  479. *
  480. * @return None
  481. *
  482. * @note None
  483. */
  484. __STATIC_INLINE void wm_tipc_disable_timer(void)
  485. {
  486. TIPC_VLD0_Type vld0;
  487. vld0.w = TIPC->VLD0;
  488. vld0.b.TIMER = 0;
  489. TIPC->VLD0 = vld0.w;
  490. }
  491. /**
  492. * @brief This function is used enable rf controler.
  493. *
  494. * @param[in] None
  495. *
  496. * @return None
  497. *
  498. * @note None
  499. */
  500. __STATIC_INLINE void wm_tipc_enable_rf_controler(void)
  501. {
  502. TIPC_VLD0_Type vld0;
  503. vld0.w = TIPC->VLD0;
  504. vld0.b.RFC = 1;
  505. TIPC->VLD0 = vld0.w;
  506. }
  507. /**
  508. * @brief This function is used disable rf controler.
  509. *
  510. * @param[in] None
  511. *
  512. * @return None
  513. *
  514. * @note None
  515. */
  516. __STATIC_INLINE void wm_tipc_disable_rf_controler(void)
  517. {
  518. TIPC_VLD0_Type vld0;
  519. vld0.w = TIPC->VLD0;
  520. vld0.b.RFC = 0;
  521. TIPC->VLD0 = vld0.w;
  522. }
  523. /**
  524. * @brief This function is used enable lcd.
  525. *
  526. * @param[in] None
  527. *
  528. * @return None
  529. *
  530. * @note None
  531. */
  532. __STATIC_INLINE void wm_tipc_enable_lcd(void)
  533. {
  534. TIPC_VLD0_Type vld0;
  535. vld0.w = TIPC->VLD0;
  536. vld0.b.LCD = 1;
  537. TIPC->VLD0 = vld0.w;
  538. }
  539. /**
  540. * @brief This function is used disable lcd.
  541. *
  542. * @param[in] None
  543. *
  544. * @return None
  545. *
  546. * @note None
  547. */
  548. __STATIC_INLINE void wm_tipc_disable_lcd(void)
  549. {
  550. TIPC_VLD0_Type vld0;
  551. vld0.w = TIPC->VLD0;
  552. vld0.b.LCD = 0;
  553. TIPC->VLD0 = vld0.w;
  554. }
  555. /**
  556. * @brief This function is used enable pwm.
  557. *
  558. * @param[in] None
  559. *
  560. * @return None
  561. *
  562. * @note None
  563. */
  564. __STATIC_INLINE void wm_tipc_enable_pwm(void)
  565. {
  566. TIPC_VLD0_Type vld0;
  567. vld0.w = TIPC->VLD0;
  568. vld0.b.PWM = 1;
  569. TIPC->VLD0 = vld0.w;
  570. }
  571. /**
  572. * @brief This function is used disable pwm.
  573. *
  574. * @param[in] None
  575. *
  576. * @return None
  577. *
  578. * @note None
  579. */
  580. __STATIC_INLINE void wm_tipc_disable_pwm(void)
  581. {
  582. TIPC_VLD0_Type vld0;
  583. vld0.w = TIPC->VLD0;
  584. vld0.b.PWM = 0;
  585. TIPC->VLD0 = vld0.w;
  586. }
  587. /**
  588. * @brief This function is used enable i2s.
  589. *
  590. * @param[in] None
  591. *
  592. * @return None
  593. *
  594. * @note None
  595. */
  596. __STATIC_INLINE void wm_tipc_enable_i2s(void)
  597. {
  598. TIPC_VLD0_Type vld0;
  599. vld0.w = TIPC->VLD0;
  600. vld0.b.I2S = 1;
  601. TIPC->VLD0 = vld0.w;
  602. }
  603. /**
  604. * @brief This function is used disable i2s.
  605. *
  606. * @param[in] None
  607. *
  608. * @return None
  609. *
  610. * @note None
  611. */
  612. __STATIC_INLINE void wm_tipc_disable_i2s(void)
  613. {
  614. TIPC_VLD0_Type vld0;
  615. vld0.w = TIPC->VLD0;
  616. vld0.b.I2S = 0;
  617. TIPC->VLD0 = vld0.w;
  618. }
  619. /**
  620. * @brief This function is used enable bt modem.
  621. *
  622. * @param[in] None
  623. *
  624. * @return None
  625. *
  626. * @note None
  627. */
  628. __STATIC_INLINE void wm_tipc_enable_bt_modem(void)
  629. {
  630. TIPC_VLD0_Type vld0;
  631. vld0.w = TIPC->VLD0;
  632. vld0.b.BT_MODEM = 1;
  633. TIPC->VLD0 = vld0.w;
  634. }
  635. /**
  636. * @brief This function is used disable bt modem.
  637. *
  638. * @param[in] None
  639. *
  640. * @return None
  641. *
  642. * @note None
  643. */
  644. __STATIC_INLINE void wm_tipc_disable_bt_modem(void)
  645. {
  646. TIPC_VLD0_Type vld0;
  647. vld0.w = TIPC->VLD0;
  648. vld0.b.BT_MODEM = 0;
  649. TIPC->VLD0 = vld0.w;
  650. }
  651. /**
  652. * @brief This function is used enable sdio host.
  653. *
  654. * @param[in] None
  655. *
  656. * @return None
  657. *
  658. * @note None
  659. */
  660. __STATIC_INLINE void wm_tipc_enable_sdio_host(void)
  661. {
  662. TIPC_VLD1_Type vld1;
  663. vld1.w = TIPC->VLD1;
  664. vld1.b.SDIO_HOST = 1;
  665. TIPC->VLD1 = vld1.w;
  666. }
  667. /**
  668. * @brief This function is used disable sdio host.
  669. *
  670. * @param[in] None
  671. *
  672. * @return None
  673. *
  674. * @note None
  675. */
  676. __STATIC_INLINE void wm_tipc_disable_sdio_host(void)
  677. {
  678. TIPC_VLD1_Type vld1;
  679. vld1.w = TIPC->VLD1;
  680. vld1.b.SDIO_HOST = 0;
  681. TIPC->VLD1 = vld1.w;
  682. }
  683. /**
  684. * @brief This function is used enable flash.
  685. *
  686. * @param[in] None
  687. *
  688. * @return None
  689. *
  690. * @note None
  691. */
  692. __STATIC_INLINE void wm_tipc_enable_flash(void)
  693. {
  694. TIPC_VLD1_Type vld1;
  695. vld1.w = TIPC->VLD1;
  696. vld1.b.FLASH = 1;
  697. TIPC->VLD1 = vld1.w;
  698. }
  699. /**
  700. * @brief This function is used disable flash.
  701. *
  702. * @param[in] None
  703. *
  704. * @return None
  705. *
  706. * @note None
  707. */
  708. __STATIC_INLINE void wm_tipc_disable_flash(void)
  709. {
  710. TIPC_VLD1_Type vld1;
  711. vld1.w = TIPC->VLD1;
  712. vld1.b.FLASH = 0;
  713. TIPC->VLD1 = vld1.w;
  714. }
  715. /**
  716. * @brief This function is used enable psram.
  717. *
  718. * @param[in] None
  719. *
  720. * @return None
  721. *
  722. * @note None
  723. */
  724. __STATIC_INLINE void wm_tipc_enable_psram(void)
  725. {
  726. TIPC_VLD1_Type vld1;
  727. vld1.w = TIPC->VLD1;
  728. vld1.b.PSRAM = 1;
  729. TIPC->VLD1 = vld1.w;
  730. }
  731. /**
  732. * @brief This function is used disable psram.
  733. *
  734. * @param[in] None
  735. *
  736. * @return None
  737. *
  738. * @note None
  739. */
  740. __STATIC_INLINE void wm_tipc_disable_psram(void)
  741. {
  742. TIPC_VLD1_Type vld1;
  743. vld1.w = TIPC->VLD1;
  744. vld1.b.PSRAM = 0;
  745. TIPC->VLD1 = vld1.w;
  746. }
  747. /**
  748. * @brief This function is used enable rsa.
  749. *
  750. * @param[in] None
  751. *
  752. * @return None
  753. *
  754. * @note None
  755. */
  756. __STATIC_INLINE void wm_tipc_enable_rsa(void)
  757. {
  758. TIPC_VLD1_Type vld1;
  759. vld1.w = TIPC->VLD1;
  760. vld1.b.RSA = 1;
  761. TIPC->VLD1 = vld1.w;
  762. }
  763. /**
  764. * @brief This function is used disable rsa.
  765. *
  766. * @param[in] None
  767. *
  768. * @return None
  769. *
  770. * @note None
  771. */
  772. __STATIC_INLINE void wm_tipc_disable_rsa(void)
  773. {
  774. TIPC_VLD1_Type vld1;
  775. vld1.w = TIPC->VLD1;
  776. vld1.b.RSA = 0;
  777. TIPC->VLD1 = vld1.w;
  778. }
  779. /**
  780. * @brief This function is used enable dma.
  781. *
  782. * @param[in] None
  783. *
  784. * @return None
  785. *
  786. * @note None
  787. */
  788. __STATIC_INLINE void wm_tipc_enable_dma(void)
  789. {
  790. TIPC_VLD1_Type vld1;
  791. vld1.w = TIPC->VLD1;
  792. vld1.b.DMA = 1;
  793. TIPC->VLD1 = vld1.w;
  794. }
  795. /**
  796. * @brief This function is used disable dma.
  797. *
  798. * @param[in] None
  799. *
  800. * @return None
  801. *
  802. * @note None
  803. */
  804. __STATIC_INLINE void wm_tipc_disable_dma(void)
  805. {
  806. TIPC_VLD1_Type vld1;
  807. vld1.w = TIPC->VLD1;
  808. vld1.b.DMA = 0;
  809. TIPC->VLD1 = vld1.w;
  810. }
  811. /**
  812. * @brief This function is used enable gpsec.
  813. *
  814. * @param[in] None
  815. *
  816. * @return None
  817. *
  818. * @note None
  819. */
  820. __STATIC_INLINE void wm_tipc_enable_gpsec(void)
  821. {
  822. TIPC_VLD1_Type vld1;
  823. vld1.w = TIPC->VLD1;
  824. vld1.b.GPSEC = 1;
  825. TIPC->VLD1 = vld1.w;
  826. }
  827. /**
  828. * @brief This function is used disable gpsec.
  829. *
  830. * @param[in] None
  831. *
  832. * @return None
  833. *
  834. * @note None
  835. */
  836. __STATIC_INLINE void wm_tipc_disable_gpsec(void)
  837. {
  838. TIPC_VLD1_Type vld1;
  839. vld1.w = TIPC->VLD1;
  840. vld1.b.GPSEC = 0;
  841. TIPC->VLD1 = vld1.w;
  842. }
  843. /**
  844. * @brief This function is used enable bt.
  845. *
  846. * @param[in] None
  847. *
  848. * @return None
  849. *
  850. * @note None
  851. */
  852. __STATIC_INLINE void wm_tipc_enable_bt(void)
  853. {
  854. TIPC_VLD1_Type vld1;
  855. vld1.w = TIPC->VLD1;
  856. vld1.b.BT = 1;
  857. TIPC->VLD1 = vld1.w;
  858. }
  859. /**
  860. * @brief This function is used disable bt.
  861. *
  862. * @param[in] None
  863. *
  864. * @return None
  865. *
  866. * @note None
  867. */
  868. __STATIC_INLINE void wm_tipc_disable_bt(void)
  869. {
  870. TIPC_VLD1_Type vld1;
  871. vld1.w = TIPC->VLD1;
  872. vld1.b.BT = 0;
  873. TIPC->VLD1 = vld1.w;
  874. }
  875. /**
  876. * @brief This function is used enable pmu.
  877. *
  878. * @param[in] None
  879. *
  880. * @return None
  881. *
  882. * @note None
  883. */
  884. __STATIC_INLINE void wm_tipc_enable_pmu(void)
  885. {
  886. TIPC_VLD1_Type vld1;
  887. vld1.w = TIPC->VLD1;
  888. vld1.b.PMU = 1;
  889. TIPC->VLD1 = vld1.w;
  890. }
  891. /**
  892. * @brief This function is used disable pmu.
  893. *
  894. * @param[in] None
  895. *
  896. * @return None
  897. *
  898. * @note None
  899. */
  900. __STATIC_INLINE void wm_tipc_disable_pmu(void)
  901. {
  902. TIPC_VLD1_Type vld1;
  903. vld1.w = TIPC->VLD1;
  904. vld1.b.PMU = 0;
  905. TIPC->VLD1 = vld1.w;
  906. }
  907. /**
  908. * @brief This function is used enable clock reset.
  909. *
  910. * @param[in] None
  911. *
  912. * @return None
  913. *
  914. * @note None
  915. */
  916. __STATIC_INLINE void wm_tipc_enable_clk_rst(void)
  917. {
  918. TIPC_VLD1_Type vld1;
  919. vld1.w = TIPC->VLD1;
  920. vld1.b.CLK_RST = 1;
  921. TIPC->VLD1 = vld1.w;
  922. }
  923. /**
  924. * @brief This function is used disable clock reset.
  925. *
  926. * @param[in] None
  927. *
  928. * @return None
  929. *
  930. * @note None
  931. */
  932. __STATIC_INLINE void wm_tipc_disable_clk_rst(void)
  933. {
  934. TIPC_VLD1_Type vld1;
  935. vld1.w = TIPC->VLD1;
  936. vld1.b.CLK_RST = 0;
  937. TIPC->VLD1 = vld1.w;
  938. }
  939. /**
  940. * @brief This function is used enable mmu.
  941. *
  942. * @param[in] None
  943. *
  944. * @return None
  945. *
  946. * @note None
  947. */
  948. __STATIC_INLINE void wm_tipc_enable_mmu(void)
  949. {
  950. TIPC_VLD1_Type vld1;
  951. vld1.w = TIPC->VLD1;
  952. vld1.b.MMU = 1;
  953. TIPC->VLD1 = vld1.w;
  954. }
  955. /**
  956. * @brief This function is used disable mmu.
  957. *
  958. * @param[in] None
  959. *
  960. * @return None
  961. *
  962. * @note None
  963. */
  964. __STATIC_INLINE void wm_tipc_disable_mmu(void)
  965. {
  966. TIPC_VLD1_Type vld1;
  967. vld1.w = TIPC->VLD1;
  968. vld1.b.MMU = 0;
  969. TIPC->VLD1 = vld1.w;
  970. }
  971. /**
  972. * @brief This function is used enable bbp.
  973. *
  974. * @param[in] None
  975. *
  976. * @return None
  977. *
  978. * @note None
  979. */
  980. __STATIC_INLINE void wm_tipc_enable_bbp(void)
  981. {
  982. TIPC_VLD1_Type vld1;
  983. vld1.w = TIPC->VLD1;
  984. vld1.b.BBP = 1;
  985. TIPC->VLD1 = vld1.w;
  986. }
  987. /**
  988. * @brief This function is used disable bbp.
  989. *
  990. * @param[in] None
  991. *
  992. * @return None
  993. *
  994. * @note None
  995. */
  996. __STATIC_INLINE void wm_tipc_disable_bbp(void)
  997. {
  998. TIPC_VLD1_Type vld1;
  999. vld1.w = TIPC->VLD1;
  1000. vld1.b.BBP = 0;
  1001. TIPC->VLD1 = vld1.w;
  1002. }
  1003. /**
  1004. * @brief This function is used enable mac.
  1005. *
  1006. * @param[in] None
  1007. *
  1008. * @return None
  1009. *
  1010. * @note None
  1011. */
  1012. __STATIC_INLINE void wm_tipc_enable_mac(void)
  1013. {
  1014. TIPC_VLD1_Type vld1;
  1015. vld1.w = TIPC->VLD1;
  1016. vld1.b.MAC = 1;
  1017. TIPC->VLD1 = vld1.w;
  1018. }
  1019. /**
  1020. * @brief This function is used disable mac.
  1021. *
  1022. * @param[in] None
  1023. *
  1024. * @return None
  1025. *
  1026. * @note None
  1027. */
  1028. __STATIC_INLINE void wm_tipc_disable_mac(void)
  1029. {
  1030. TIPC_VLD1_Type vld1;
  1031. vld1.w = TIPC->VLD1;
  1032. vld1.b.MAC = 0;
  1033. TIPC->VLD1 = vld1.w;
  1034. }
  1035. /**
  1036. * @brief This function is used enable sec.
  1037. *
  1038. * @param[in] None
  1039. *
  1040. * @return None
  1041. *
  1042. * @note None
  1043. */
  1044. __STATIC_INLINE void wm_tipc_enable_sec(void)
  1045. {
  1046. TIPC_VLD1_Type vld1;
  1047. vld1.w = TIPC->VLD1;
  1048. vld1.b.SEC = 1;
  1049. TIPC->VLD1 = vld1.w;
  1050. }
  1051. /**
  1052. * @brief This function is used disable sec.
  1053. *
  1054. * @param[in] None
  1055. *
  1056. * @return None
  1057. *
  1058. * @note None
  1059. */
  1060. __STATIC_INLINE void wm_tipc_disable_sec(void)
  1061. {
  1062. TIPC_VLD1_Type vld1;
  1063. vld1.w = TIPC->VLD1;
  1064. vld1.b.SEC = 0;
  1065. TIPC->VLD1 = vld1.w;
  1066. }
  1067. /**
  1068. * @brief This function is used enable sdio slave.
  1069. *
  1070. * @param[in] None
  1071. *
  1072. * @return None
  1073. *
  1074. * @note None
  1075. */
  1076. __STATIC_INLINE void wm_tipc_enable_sdio_slave(void)
  1077. {
  1078. TIPC_VLD1_Type vld1;
  1079. vld1.w = TIPC->VLD1;
  1080. vld1.b.SDIO_SLAVE = 1;
  1081. TIPC->VLD1 = vld1.w;
  1082. }
  1083. /**
  1084. * @brief This function is used disable sdio slave.
  1085. *
  1086. * @param[in] None
  1087. *
  1088. * @return None
  1089. *
  1090. * @note None
  1091. */
  1092. __STATIC_INLINE void wm_tipc_disable_sdio_slave(void)
  1093. {
  1094. TIPC_VLD1_Type vld1;
  1095. vld1.w = TIPC->VLD1;
  1096. vld1.b.SDIO_SLAVE = 0;
  1097. TIPC->VLD1 = vld1.w;
  1098. }
  1099. /**
  1100. * @brief This function is used enable high speed spi.
  1101. *
  1102. * @param[in] None
  1103. *
  1104. * @return None
  1105. *
  1106. * @note None
  1107. */
  1108. __STATIC_INLINE void wm_tipc_enable_hspi(void)
  1109. {
  1110. TIPC_VLD1_Type vld1;
  1111. vld1.w = TIPC->VLD1;
  1112. vld1.b.SPI_HS = 1;
  1113. TIPC->VLD1 = vld1.w;
  1114. }
  1115. /**
  1116. * @brief This function is used disable high speed spi.
  1117. *
  1118. * @param[in] None
  1119. *
  1120. * @return None
  1121. *
  1122. * @note None
  1123. */
  1124. __STATIC_INLINE void wm_tipc_disable_hspi(void)
  1125. {
  1126. TIPC_VLD1_Type vld1;
  1127. vld1.w = TIPC->VLD1;
  1128. vld1.b.SPI_HS = 0;
  1129. TIPC->VLD1 = vld1.w;
  1130. }
  1131. /**
  1132. * @brief This function is used enable sdio wrapper.
  1133. *
  1134. * @param[in] None
  1135. *
  1136. * @return None
  1137. *
  1138. * @note None
  1139. */
  1140. __STATIC_INLINE void wm_tipc_enable_sdio_wrapper(void)
  1141. {
  1142. TIPC_VLD1_Type vld1;
  1143. vld1.w = TIPC->VLD1;
  1144. vld1.b.SDIO_WRAPPER = 1;
  1145. TIPC->VLD1 = vld1.w;
  1146. }
  1147. /**
  1148. * @brief This function is used disable sdio wrapper.
  1149. *
  1150. * @param[in] None
  1151. *
  1152. * @return None
  1153. *
  1154. * @note None
  1155. */
  1156. __STATIC_INLINE void wm_tipc_disable_sdio_wrapper(void)
  1157. {
  1158. TIPC_VLD1_Type vld1;
  1159. vld1.w = TIPC->VLD1;
  1160. vld1.b.SDIO_WRAPPER = 0;
  1161. TIPC->VLD1 = vld1.w;
  1162. }
  1163. /**
  1164. * @brief This function is used enable rf bist.
  1165. *
  1166. * @param[in] None
  1167. *
  1168. * @return None
  1169. *
  1170. * @note None
  1171. */
  1172. __STATIC_INLINE void wm_tipc_enable_rf_bist(void)
  1173. {
  1174. TIPC_VLD1_Type vld1;
  1175. vld1.w = TIPC->VLD1;
  1176. vld1.b.RF_BIST = 1;
  1177. TIPC->VLD1 = vld1.w;
  1178. }
  1179. /**
  1180. * @brief This function is used disable rf bist.
  1181. *
  1182. * @param[in] None
  1183. *
  1184. * @return None
  1185. *
  1186. * @note None
  1187. */
  1188. __STATIC_INLINE void wm_tipc_disable_rf_bist(void)
  1189. {
  1190. TIPC_VLD1_Type vld1;
  1191. vld1.w = TIPC->VLD1;
  1192. vld1.b.RF_BIST = 0;
  1193. TIPC->VLD1 = vld1.w;
  1194. }
  1195. /**
  1196. * @}
  1197. */
  1198. /**
  1199. * @}
  1200. */
  1201. #endif