Clock_Ip_Pll.c.016i.visibility 8.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430
  1. Marking local functions:
  2. Marking externally visible functions:
  3. Marking externally visible variables: pllCallbacks
  4. Reclaiming functions:
  5. Reclaiming variables:
  6. Clearing address taken flags:
  7. Symbol table:
  8. ReportClockErrors/15 (ReportClockErrors) @06d77700
  9. Type: function
  10. Visibility: external public
  11. References:
  12. Referring:
  13. Availability: not_available
  14. Function flags:
  15. Called by: CompleteSpll/8
  16. Calls:
  17. ClockTimeoutExpired/14 (ClockTimeoutExpired) @06d77620
  18. Type: function
  19. Visibility: external public
  20. References:
  21. Referring:
  22. Availability: not_available
  23. Function flags:
  24. Called by: CompleteSpll/8
  25. Calls:
  26. ClockStartTimeout/13 (ClockStartTimeout) @06d77540
  27. Type: function
  28. Visibility: external public
  29. References:
  30. Referring:
  31. Availability: not_available
  32. Function flags:
  33. Called by: CompleteSpll/8
  34. Calls:
  35. EnableSpll/12 (EnableSpll) @06d6fd20
  36. Type: function definition analyzed
  37. Visibility: force_output no_reorder prevailing_def_ironly
  38. Address is taken.
  39. References:
  40. Referring: pllCallbacks/0 (addr)
  41. Availability: available
  42. Function flags: body
  43. Called by:
  44. Calls: EnableSpll_TrustedCall/11
  45. EnableSpll_TrustedCall/11 (EnableSpll_TrustedCall) @06d6fa80
  46. Type: function definition analyzed
  47. Visibility: force_output no_reorder prevailing_def_ironly
  48. References:
  49. Referring:
  50. Availability: available
  51. Function flags: body
  52. Called by: EnableSpll/12
  53. Calls:
  54. DisableSpll/10 (DisableSpll) @06d6f700
  55. Type: function definition analyzed
  56. Visibility: force_output no_reorder prevailing_def_ironly
  57. Address is taken.
  58. References:
  59. Referring: pllCallbacks/0 (addr)
  60. Availability: available
  61. Function flags: body
  62. Called by:
  63. Calls: DisableSpll_TrustedCall/9
  64. DisableSpll_TrustedCall/9 (DisableSpll_TrustedCall) @06d6f460
  65. Type: function definition analyzed
  66. Visibility: force_output no_reorder prevailing_def_ironly
  67. References:
  68. Referring:
  69. Availability: available
  70. Function flags: body
  71. Called by: DisableSpll/10
  72. Calls:
  73. CompleteSpll/8 (CompleteSpll) @06d6f1c0
  74. Type: function definition analyzed
  75. Visibility: force_output no_reorder prevailing_def_ironly
  76. Address is taken.
  77. References:
  78. Referring: pllCallbacks/0 (addr)
  79. Availability: available
  80. Function flags: body
  81. Called by:
  82. Calls: ReportClockErrors/15 ClockTimeoutExpired/14 ClockStartTimeout/13
  83. SetSpll/7 (SetSpll) @06c6f540
  84. Type: function definition analyzed
  85. Visibility: force_output no_reorder prevailing_def_ironly
  86. Address is taken.
  87. References:
  88. Referring: pllCallbacks/0 (addr)
  89. Availability: available
  90. Function flags: body
  91. Called by:
  92. Calls: SetSpll_TrustedCall/6
  93. SetSpll_TrustedCall/6 (SetSpll_TrustedCall) @06c6fee0
  94. Type: function definition analyzed
  95. Visibility: force_output no_reorder prevailing_def_ironly
  96. References:
  97. Referring:
  98. Availability: available
  99. Function flags: body
  100. Called by: SetSpll/7
  101. Calls:
  102. ResetSpll/5 (ResetSpll) @06c6f700
  103. Type: function definition analyzed
  104. Visibility: force_output no_reorder prevailing_def_ironly
  105. Address is taken.
  106. References:
  107. Referring: pllCallbacks/0 (addr)
  108. Availability: available
  109. Function flags: body
  110. Called by:
  111. Calls: ResetSpll_TrustedCall/4
  112. ResetSpll_TrustedCall/4 (ResetSpll_TrustedCall) @06c6f460
  113. Type: function definition analyzed
  114. Visibility: force_output no_reorder prevailing_def_ironly
  115. References:
  116. Referring:
  117. Availability: available
  118. Function flags: body
  119. Called by: ResetSpll/5
  120. Calls:
  121. Callback_PllEmptyDisable/3 (Callback_PllEmptyDisable) @06c6f1c0
  122. Type: function definition analyzed
  123. Visibility: force_output no_reorder prevailing_def_ironly
  124. Address is taken.
  125. References:
  126. Referring: pllCallbacks/0 (addr)
  127. Availability: available
  128. Function flags: body
  129. Called by:
  130. Calls:
  131. Callback_PllEmptyComplete/2 (Callback_PllEmptyComplete) @06c6aee0
  132. Type: function definition analyzed
  133. Visibility: force_output no_reorder prevailing_def_ironly
  134. Address is taken.
  135. References:
  136. Referring: pllCallbacks/0 (addr)
  137. Availability: available
  138. Function flags: body
  139. Called by:
  140. Calls:
  141. Callback_PllEmpty/1 (Callback_PllEmpty) @06c6ae00
  142. Type: function definition analyzed
  143. Visibility: force_output no_reorder prevailing_def_ironly
  144. Address is taken.
  145. References:
  146. Referring: pllCallbacks/0 (addr)pllCallbacks/0 (addr)pllCallbacks/0 (addr)
  147. Availability: available
  148. Function flags: body
  149. Called by:
  150. Calls:
  151. pllCallbacks/0 (pllCallbacks) @06c6c798
  152. Type: variable definition analyzed
  153. Visibility: force_output externally_visible no_reorder public
  154. References: Callback_PllEmpty/1 (addr)Callback_PllEmpty/1 (addr)Callback_PllEmptyComplete/2 (addr)Callback_PllEmpty/1 (addr)Callback_PllEmptyDisable/3 (addr)ResetSpll/5 (addr)SetSpll/7 (addr)CompleteSpll/8 (addr)EnableSpll/12 (addr)DisableSpll/10 (addr)
  155. Referring:
  156. Availability: available
  157. Varpool flags: initialized read-only const-value-known
  158. EnableSpll (const struct Clock_Ip_PllConfigType * config)
  159. {
  160. <bb 2> :
  161. EnableSpll_TrustedCall (config);
  162. return;
  163. }
  164. EnableSpll_TrustedCall (const struct Clock_Ip_PllConfigType * config)
  165. {
  166. <bb 2> :
  167. _1 = config->enable;
  168. if (_1 == 1)
  169. goto <bb 3>; [INV]
  170. else
  171. goto <bb 4>; [INV]
  172. <bb 3> :
  173. _2 = 1074151424B;
  174. _3 = _2->SPLLCSR;
  175. _4 = 1074151424B;
  176. _5 = _3 | 1;
  177. _4->SPLLCSR = _5;
  178. <bb 4> :
  179. return;
  180. }
  181. DisableSpll (Clock_Ip_NameType PllName)
  182. {
  183. <bb 2> :
  184. DisableSpll_TrustedCall (PllName);
  185. return;
  186. }
  187. DisableSpll_TrustedCall (Clock_Ip_NameType PllName)
  188. {
  189. <bb 2> :
  190. _1 = 1074151424B;
  191. _2 = _1->SPLLCSR;
  192. _3 = 1074151424B;
  193. _4 = _2 & 4286578687;
  194. _3->SPLLCSR = _4;
  195. _5 = 1074151424B;
  196. _6 = _5->SPLLCSR;
  197. _7 = 1074151424B;
  198. _8 = _6 & 4294967294;
  199. _7->SPLLCSR = _8;
  200. return;
  201. }
  202. CompleteSpll (Clock_Ip_NameType pllName)
  203. {
  204. uint32 SPLLStatus;
  205. uint32 TimeoutTicks;
  206. uint32 ElapsedTime;
  207. uint32 StartTime;
  208. boolean TimeoutOccurred;
  209. clock_pll_status_t pllStatus;
  210. clock_pll_status_t D.6125;
  211. <bb 2> :
  212. pllStatus = 1;
  213. TimeoutOccurred = 0;
  214. _1 = 1074151424B;
  215. _2 = _1->SPLLCSR;
  216. _3 = _2 & 1;
  217. if (_3 != 0)
  218. goto <bb 3>; [INV]
  219. else
  220. goto <bb 9>; [INV]
  221. <bb 3> :
  222. ClockStartTimeout (&StartTime, &ElapsedTime, &TimeoutTicks, 50000);
  223. <bb 4> :
  224. _4 = 1074151424B;
  225. _5 = _4->SPLLCSR;
  226. _6 = _5 >> 24;
  227. SPLLStatus = _6 & 1;
  228. TimeoutTicks.0_7 = TimeoutTicks;
  229. TimeoutOccurred = ClockTimeoutExpired (&StartTime, &ElapsedTime, TimeoutTicks.0_7);
  230. if (SPLLStatus == 0)
  231. goto <bb 5>; [INV]
  232. else
  233. goto <bb 6>; [INV]
  234. <bb 5> :
  235. _8 = ~TimeoutOccurred;
  236. if (_8 != 0)
  237. goto <bb 4>; [INV]
  238. else
  239. goto <bb 6>; [INV]
  240. <bb 6> :
  241. _9 = ~TimeoutOccurred;
  242. if (_9 != 0)
  243. goto <bb 7>; [INV]
  244. else
  245. goto <bb 8>; [INV]
  246. <bb 7> :
  247. pllStatus = 2;
  248. goto <bb 10>; [INV]
  249. <bb 8> :
  250. ReportClockErrors (1, pllName);
  251. goto <bb 10>; [INV]
  252. <bb 9> :
  253. pllStatus = 0;
  254. <bb 10> :
  255. D.6125 = pllStatus;
  256. StartTime = {CLOBBER};
  257. ElapsedTime = {CLOBBER};
  258. TimeoutTicks = {CLOBBER};
  259. <bb 11> :
  260. <L10>:
  261. return D.6125;
  262. }
  263. SetSpll (const struct Clock_Ip_PllConfigType * config)
  264. {
  265. <bb 2> :
  266. SetSpll_TrustedCall (config);
  267. return;
  268. }
  269. SetSpll_TrustedCall (const struct Clock_Ip_PllConfigType * config)
  270. {
  271. <bb 2> :
  272. _1 = config->enable;
  273. if (_1 == 1)
  274. goto <bb 3>; [INV]
  275. else
  276. goto <bb 8>; [INV]
  277. <bb 3> :
  278. _2 = 1074151424B;
  279. _3 = _2->SPLLCFG;
  280. _4 = config->predivider;
  281. _5 = (long unsigned int) _4;
  282. _6 = _5 + 4294967295;
  283. _7 = _6 << 8;
  284. _8 = _7 & 1792;
  285. _9 = config->mulFactorDiv;
  286. _10 = (long unsigned int) _9;
  287. _11 = _10 + 4294967280;
  288. _12 = _11 << 16;
  289. _13 = _12 & 2031616;
  290. _14 = _8 | _13;
  291. _15 = 1074151424B;
  292. _16 = _3 | _14;
  293. _15->SPLLCFG = _16;
  294. _17 = config->monitor;
  295. _18 = (int) _17;
  296. switch (_18) <default: <L4> [INV], case 0: <L1> [INV], case 1: <L2> [INV], case 2: <L3> [INV]>
  297. <bb 4> :
  298. <L1>:
  299. _19 = 1074151424B;
  300. _19->SPLLCSR = 0;
  301. goto <bb 8>; [INV]
  302. <bb 5> :
  303. <L2>:
  304. _20 = 1074151424B;
  305. _20->SPLLCSR = 65536;
  306. goto <bb 8>; [INV]
  307. <bb 6> :
  308. <L3>:
  309. _21 = 1074151424B;
  310. _21->SPLLCSR = 196608;
  311. goto <bb 8>; [INV]
  312. <bb 7> :
  313. <L4>:
  314. <bb 8> :
  315. return;
  316. }
  317. ResetSpll (const struct Clock_Ip_PllConfigType * config)
  318. {
  319. <bb 2> :
  320. ResetSpll_TrustedCall (config);
  321. return;
  322. }
  323. ResetSpll_TrustedCall (const struct Clock_Ip_PllConfigType * config)
  324. {
  325. <bb 2> :
  326. _1 = 1074151424B;
  327. _2 = _1->SPLLCSR;
  328. _3 = 1074151424B;
  329. _4 = _2 & 4286578687;
  330. _3->SPLLCSR = _4;
  331. _5 = 1074151424B;
  332. _6 = _5->SPLLCSR;
  333. _7 = 1074151424B;
  334. _8 = _6 & 4294967294;
  335. _7->SPLLCSR = _8;
  336. _9 = 1074151424B;
  337. _10 = _9->SPLLCFG;
  338. _11 = 1074151424B;
  339. _12 = _10 & 4294965503;
  340. _11->SPLLCFG = _12;
  341. _13 = 1074151424B;
  342. _14 = _13->SPLLCFG;
  343. _15 = 1074151424B;
  344. _16 = _14 & 4292935679;
  345. _15->SPLLCFG = _16;
  346. return;
  347. }
  348. Callback_PllEmptyDisable (Clock_Ip_NameType PllName)
  349. {
  350. <bb 2> :
  351. return;
  352. }
  353. Callback_PllEmptyComplete (Clock_Ip_NameType PllName)
  354. {
  355. clock_pll_status_t D.6114;
  356. <bb 2> :
  357. D.6114 = 0;
  358. <bb 3> :
  359. <L0>:
  360. return D.6114;
  361. }
  362. Callback_PllEmpty (const struct Clock_Ip_PllConfigType * config)
  363. {
  364. <bb 2> :
  365. return;
  366. }