2 * Copyright (c) 2013 - 2014, Freescale Semiconductor, Inc.
5 * Redistribution and use in source and binary forms, with or without modification,
6 * are permitted provided that the following conditions are met:
8 * o Redistributions of source code must retain the above copyright notice, this list
9 * of conditions and the following disclaimer.
11 * o Redistributions in binary form must reproduce the above copyright notice, this
12 * list of conditions and the following disclaimer in the documentation and/or
13 * other materials provided with the distribution.
15 * o Neither the name of Freescale Semiconductor, Inc. nor the names of its
16 * contributors may be used to endorse or promote products derived from this
17 * software without specific prior written permission.
19 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
20 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
21 * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
22 * DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
23 * ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
24 * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
25 * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
26 * ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28 * SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31 #if !defined(__FSL_SIM_HAL_K22F51212_H__)
32 #define __FSL_SIM_HAL_K22F51212_H__
34 /*! @addtogroup sim_hal*/
39 /*******************************************************************************
41 ******************************************************************************/
43 /*! @brief SIM USB clock source */
44 typedef enum _sim_usb_clock_source
46 kSimUsbSrcClkIn
, /* USB CLKIN Clock */
47 kSimUsbSrcPllFllSel
/* clock as selected by SOPT2[PLLFLLSEL] */
48 } sim_usb_clock_source_t
;
50 /*! @brief SIM LPUART clock source */
51 typedef enum _sim_lpuart_clock_source
53 kSimLpuartSrcNone
, /* Clock disabled */
54 kSimLpuartSrcPllFllSel
, /* Clock as selected by SOPT2[PLLFLLSEL] */
55 kSimLpuartSrcOscErclk
, /* OscErClk with special divider */
56 kSimLpuartSrcMcgIrclk
/* MCGIRCLK */
57 } sim_lpuart_clock_source_t
;
59 /*! @brief SIM PLLFLLSEL clock source select */
60 typedef enum _sim_pllfll_clock_sel
62 kSimPllFllSelFll
, /* Fll clock */
63 kSimPllFllSelPll
, /* Pll0 clock */
64 kSimPllFllSelNone
, /* reserved */
65 kSimPllFllSelIrc
/* IRC 48Mhz */
66 } sim_pllfll_clock_sel_t
;
68 /*! @brief SIM OSC32KSEL clock source select */
69 typedef enum _sim_osc32k_clock_sel
71 kSimOsc32kSelOsc32k
, /* OSC 32k clock */
72 kSimOsc32kSelReserved
, /* Reserved */
73 kSimOsc32kSelRtc32k
, /* RTC 32k clock */
74 kSimOsc32kSelLpo
/* LPO clock */
75 } sim_osc32k_clock_sel_t
;
77 /*! @brief SIM TRACESEL clock source select */
78 typedef enum _sim_trace_clock_sel
80 kSimTraceMcgoutClk
, /* MCG out clock */
81 kSimTraceCoreClk
/* core clock */
82 } sim_trace_clock_sel_t
;
84 /*! @brief SIM CLKOUT_SEL clock source select */
85 typedef enum _sim_clkout_clock_sel
87 kSimClkoutFlexbusClk
, /* Flexbus clock */
88 kSimClkoutReserved
, /* Reserved */
89 kSimClkoutFlashClk
, /* Flash clock */
90 kSimClkoutLpoClk
, /* LPO clock */
91 kSimClkoutMcgIrcClk
, /* MCG out clock */
92 kSimClkoutRtc32kClk
, /* RTC 32k clock */
95 } sim_clkout_clock_sel_t
;
97 /*! @brief SIM RTCCLKOUTSEL clock source select */
98 typedef enum _sim_rtcclkout_clock_sel
100 kSimRtcClkout1hzClk
, /* 1Hz clock */
101 kSimRtcClkout32kClk
/* 32KHz clock */
102 } sim_rtcclkout_clock_sel_t
;
104 /*******************************************************************************
106 ******************************************************************************/
108 #if defined(__cplusplus)
110 #endif /* __cplusplus*/
112 /*! @name IP related clock feature APIs*/
116 * @brief Enable the clock for DMA module.
118 * This function enables the clock for DMA moudle.
119 * @param instance module device instance
121 void SIM_HAL_EnableDmaClock(uint32_t baseAddr
, uint32_t instance
);
124 * @brief Disable the clock for DMA module.
126 * This function disables the clock for DMA moudle.
128 * @param baseAddr Base address for current SIM instance.
129 * @param instance module device instance
131 void SIM_HAL_DisableDmaClock(uint32_t baseAddr
, uint32_t instance
);
134 * @brief Get the the clock gate state for DMA module.
136 * This function will get the clock gate state for DMA moudle.
138 * @param baseAddr Base address for current SIM instance.
139 * @param instance module device instance
140 * @return state true - ungated(Enabled), false - gated (Disabled)
142 bool SIM_HAL_GetDmaGateCmd(uint32_t baseAddr
, uint32_t instance
);
145 * @brief Enable the clock for DMAMUX module.
147 * This function enables the clock for DMAMUX moudle.
149 * @param baseAddr Base address for current SIM instance.
150 * @param instance module device instance
152 void SIM_HAL_EnableDmamuxClock(uint32_t baseAddr
, uint32_t instance
);
155 * @brief Disable the clock for DMAMUX module.
157 * This function disables the clock for DMAMUX moudle.
159 * @param baseAddr Base address for current SIM instance.
160 * @param instance module device instance
162 void SIM_HAL_DisableDmamuxClock(uint32_t baseAddr
, uint32_t instance
);
165 * @brief Get the the clock gate state for DMAMUX module.
167 * This function will get the clock gate state for DMAMUX moudle.
169 * @param baseAddr Base address for current SIM instance.
170 * @param instance module device instance
171 * @return state true - ungated(Enabled), false - gated (Disabled)
173 bool SIM_HAL_GetDmamuxGateCmd(uint32_t baseAddr
, uint32_t instance
);
176 * @brief Enable the clock for PORT module.
178 * This function enables the clock for PORT moudle.
180 * @param baseAddr Base address for current SIM instance.
181 * @param instance module device instance
183 void SIM_HAL_EnablePortClock(uint32_t baseAddr
, uint32_t instance
);
186 * @brief Disable the clock for PORT module.
188 * This function disables the clock for PORT moudle.
190 * @param baseAddr Base address for current SIM instance.
191 * @param instance module device instance
193 void SIM_HAL_DisablePortClock(uint32_t baseAddr
, uint32_t instance
);
196 * @brief Get the the clock gate state for PORT module.
198 * This function will get the clock gate state for PORT moudle.
200 * @param baseAddr Base address for current SIM instance.
201 * @param instance module device instance
202 * @return state true - ungated(Enabled), false - gated (Disabled)
204 bool SIM_HAL_GetPortGateCmd(uint32_t baseAddr
, uint32_t instance
);
207 * @brief Enable the clock for EWM module.
209 * This function enables the clock for EWM moudle.
211 * @param baseAddr Base address for current SIM instance.
212 * @param instance module device instance
214 void SIM_HAL_EnableEwmClock(uint32_t baseAddr
, uint32_t instance
);
217 * @brief Disable the clock for EWM module.
219 * This function disables the clock for EWM moudle.
221 * @param baseAddr Base address for current SIM instance.
222 * @param instance module device instance
224 void SIM_HAL_DisableEwmClock(uint32_t baseAddr
, uint32_t instance
);
227 * @brief Get the the clock gate state for EWM module.
229 * This function will get the clock gate state for EWM moudle.
231 * @param baseAddr Base address for current SIM instance.
232 * @param instance module device instance
233 * @return state true - ungated(Enabled), false - gated (Disabled)
235 bool SIM_HAL_GetEwmGateCmd(uint32_t baseAddr
, uint32_t instance
);
238 * @brief Enable the clock for FLEXBUS module.
240 * This function enables the clock for FLEXBUS moudle.
242 * @param baseAddr Base address for current SIM instance.
243 * @param instance module device instance
245 void SIM_HAL_EnableFlexbusClock(uint32_t baseAddr
, uint32_t instance
);
248 * @brief Disable the clock for FLEXBUS module.
250 * This function disables the clock for FLEXBUS moudle.
252 * @param baseAddr Base address for current SIM instance.
253 * @param instance module device instance
255 void SIM_HAL_DisableFlexbusClock(uint32_t baseAddr
, uint32_t instance
);
258 * @brief Get the the clock gate state for FLEXBUS module.
260 * This function will get the clock gate state for FLEXBUS moudle.
262 * @param baseAddr Base address for current SIM instance.
263 * @param instance module device instance
264 * @return state true - ungated(Enabled), false - gated (Disabled)
266 bool SIM_HAL_GetFlexbusGateCmd(uint32_t baseAddr
, uint32_t instance
);
269 * @brief Enable the clock for FTF module.
271 * This function enables the clock for FTF moudle.
273 * @param baseAddr Base address for current SIM instance.
274 * @param instance module device instance
276 void SIM_HAL_EnableFtfClock(uint32_t baseAddr
, uint32_t instance
);
279 * @brief Disable the clock for FTF module.
281 * This function disables the clock for FTF moudle.
283 * @param baseAddr Base address for current SIM instance.
284 * @param instance module device instance
286 void SIM_HAL_DisableFtfClock(uint32_t baseAddr
, uint32_t instance
);
289 * @brief Get the the clock gate state for FTF module.
291 * This function will get the clock gate state for FTF moudle.
293 * @param baseAddr Base address for current SIM instance.
294 * @param instance module device instance
295 * @return state true - ungated(Enabled), false - gated (Disabled)
297 bool SIM_HAL_GetFtfGateCmd(uint32_t baseAddr
, uint32_t instance
);
300 * @brief Enable the clock for CRC module.
302 * This function enables the clock for CRC moudle.
304 * @param baseAddr Base address for current SIM instance.
305 * @param instance module device instance
307 void SIM_HAL_EnableCrcClock(uint32_t baseAddr
, uint32_t instance
);
310 * @brief Disable the clock for CRC module.
312 * This function disables the clock for CRC moudle.
314 * @param baseAddr Base address for current SIM instance.
315 * @param instance module device instance
317 void SIM_HAL_DisableCrcClock(uint32_t baseAddr
, uint32_t instance
);
320 * @brief Get the the clock gate state for CRC module.
322 * This function will get the clock gate state for CRC moudle.
324 * @param baseAddr Base address for current SIM instance.
325 * @param instance module device instance
326 * @return state true - ungated(Enabled), false - gated (Disabled)
328 bool SIM_HAL_GetCrcGateCmd(uint32_t baseAddr
, uint32_t instance
);
331 * @brief Enable the clock for RNGA module.
333 * This function enables the clock for RNGA moudle.
335 * @param baseAddr Base address for current SIM instance.
336 * @param instance module device instance
338 void SIM_HAL_EnableRngaClock(uint32_t baseAddr
, uint32_t instance
);
341 * @brief Disable the clock for RNGA module.
343 * This function disables the clock for RNGA moudle.
345 * @param baseAddr Base address for current SIM instance.
346 * @param instance module device instance
348 void SIM_HAL_DisableRngaClock(uint32_t baseAddr
, uint32_t instance
);
351 * @brief Get the the clock gate state for RNGA module.
353 * This function will get the clock gate state for RNGA moudle.
355 * @param baseAddr Base address for current SIM instance.
356 * @param instance module device instance
357 * @return state true - ungated(Enabled), false - gated (Disabled)
359 bool SIM_HAL_GetRngaGateCmd(uint32_t baseAddr
, uint32_t instance
);
362 * @brief Enable the clock for ADC module.
364 * This function enables the clock for ADC moudle.
366 * @param baseAddr Base address for current SIM instance.
367 * @param instance module device instance
369 void SIM_HAL_EnableAdcClock(uint32_t baseAddr
, uint32_t instance
);
372 * @brief Disable the clock for ADC module.
374 * This function disables the clock for ADC moudle.
376 * @param baseAddr Base address for current SIM instance.
377 * @param instance module device instance
379 void SIM_HAL_DisableAdcClock(uint32_t baseAddr
, uint32_t instance
);
382 * @brief Get the the clock gate state for ADC module.
384 * This function will get the clock gate state for ADC moudle.
386 * @param baseAddr Base address for current SIM instance.
387 * @param instance module device instance
388 * @return state true - ungated(Enabled), false - gated (Disabled)
390 bool SIM_HAL_GetAdcGateCmd(uint32_t baseAddr
, uint32_t instance
);
393 * @brief Enable the clock for CMP module.
395 * This function enables the clock for CMP moudle.
397 * @param baseAddr Base address for current SIM instance.
398 * @param instance module device instance
400 void SIM_HAL_EnableCmpClock(uint32_t baseAddr
, uint32_t instance
);
403 * @brief Disable the clock for CMP module.
405 * This function disables the clock for CMP moudle.
407 * @param baseAddr Base address for current SIM instance.
408 * @param instance module device instance
410 void SIM_HAL_DisableCmpClock(uint32_t baseAddr
, uint32_t instance
);
413 * @brief Get the the clock gate state for CMP module.
415 * This function will get the clock gate state for CMP moudle.
417 * @param baseAddr Base address for current SIM instance.
418 * @param instance module device instance
419 * @return state true - ungated(Enabled), false - gated (Disabled)
421 bool SIM_HAL_GetCmpGateCmd(uint32_t baseAddr
, uint32_t instance
);
424 * @brief Enable the clock for DAC module.
426 * This function enables the clock for DAC moudle.
428 * @param baseAddr Base address for current SIM instance.
429 * @param instance module device instance
431 void SIM_HAL_EnableDacClock(uint32_t baseAddr
, uint32_t instance
);
434 * @brief Disable the clock for DAC module.
436 * This function disables the clock for DAC moudle.
438 * @param baseAddr Base address for current SIM instance.
439 * @param instance module device instance
441 void SIM_HAL_DisableDacClock(uint32_t baseAddr
, uint32_t instance
);
444 * @brief Get the the clock gate state for DAC module.
446 * This function will get the clock gate state for DAC moudle.
448 * @param baseAddr Base address for current SIM instance.
449 * @param instance module device instance
450 * @return state true - ungated(Enabled), false - gated (Disabled)
452 bool SIM_HAL_GetDacGateCmd(uint32_t baseAddr
, uint32_t instance
);
455 * @brief Enable the clock for VREF module.
457 * This function enables the clock for VREF moudle.
459 * @param baseAddr Base address for current SIM instance.
460 * @param instance module device instance
462 void SIM_HAL_EnableVrefClock(uint32_t baseAddr
, uint32_t instance
);
465 * @brief Disable the clock for VREF module.
467 * This function disables the clock for VREF moudle.
469 * @param baseAddr Base address for current SIM instance.
470 * @param instance module device instance
472 void SIM_HAL_DisableVrefClock(uint32_t baseAddr
, uint32_t instance
);
475 * @brief Get the the clock gate state for VREF module.
477 * This function will get the clock gate state for VREF moudle.
479 * @param baseAddr Base address for current SIM instance.
480 * @param instance module device instance
481 * @return state true - ungated(Enabled), false - gated (Disabled)
483 bool SIM_HAL_GetVrefGateCmd(uint32_t baseAddr
, uint32_t instance
);
486 * @brief Enable the clock for SAI module.
488 * This function enables the clock for SAI moudle.
490 * @param baseAddr Base address for current SIM instance.
491 * @param instance module device instance
493 void SIM_HAL_EnableSaiClock(uint32_t baseAddr
, uint32_t instance
);
496 * @brief Disable the clock for SAI module.
498 * This function disables the clock for SAI moudle.
500 * @param baseAddr Base address for current SIM instance.
501 * @param instance module device instance
503 void SIM_HAL_DisableSaiClock(uint32_t baseAddr
, uint32_t instance
);
506 * @brief Get the the clock gate state for SAI module.
508 * This function will get the clock gate state for SAI moudle.
510 * @param baseAddr Base address for current SIM instance.
511 * @param instance module device instance
512 * @return state true - ungated(Enabled), false - gated (Disabled)
514 bool SIM_HAL_GetSaiGateCmd(uint32_t baseAddr
, uint32_t instance
);
517 * @brief Enable the clock for PDB module.
519 * This function enables the clock for PDB moudle.
521 * @param baseAddr Base address for current SIM instance.
522 * @param instance module device instance
524 void SIM_HAL_EnablePdbClock(uint32_t baseAddr
, uint32_t instance
);
527 * @brief Disable the clock for PDB module.
529 * This function disables the clock for PDB moudle.
531 * @param baseAddr Base address for current SIM instance.
532 * @param instance module device instance
534 void SIM_HAL_DisablePdbClock(uint32_t baseAddr
, uint32_t instance
);
537 * @brief Get the the clock gate state for PDB module.
539 * This function will get the clock gate state for PDB moudle.
541 * @param baseAddr Base address for current SIM instance.
542 * @param instance module device instance
543 * @return state true - ungated(Enabled), false - gated (Disabled)
545 bool SIM_HAL_GetPdbGateCmd(uint32_t baseAddr
, uint32_t instance
);
548 * @brief Enable the clock for FTM module.
550 * This function enables the clock for FTM moudle.
552 * @param baseAddr Base address for current SIM instance.
553 * @param instance module device instance
555 void SIM_HAL_EnableFtmClock(uint32_t baseAddr
, uint32_t instance
);
558 * @brief Disable the clock for FTM module.
560 * This function disables the clock for FTM moudle.
562 * @param baseAddr Base address for current SIM instance.
563 * @param instance module device instance
565 void SIM_HAL_DisableFtmClock(uint32_t baseAddr
, uint32_t instance
);
568 * @brief Get the the clock gate state for FTM module.
570 * This function will get the clock gate state for FTM moudle.
572 * @param baseAddr Base address for current SIM instance.
573 * @param instance module device instance
574 * @return state true - ungated(Enabled), false - gated (Disabled)
576 bool SIM_HAL_GetFtmGateCmd(uint32_t baseAddr
, uint32_t instance
);
579 * @brief Enable the clock for PIT module.
581 * This function enables the clock for PIT moudle.
583 * @param baseAddr Base address for current SIM instance.
584 * @param instance module device instance
586 void SIM_HAL_EnablePitClock(uint32_t baseAddr
, uint32_t instance
);
589 * @brief Disable the clock for PIT module.
591 * This function disables the clock for PIT moudle.
593 * @param baseAddr Base address for current SIM instance.
594 * @param instance module device instance
596 void SIM_HAL_DisablePitClock(uint32_t baseAddr
, uint32_t instance
);
599 * @brief Get the the clock gate state for PIT module.
601 * This function will get the clock gate state for PIT moudle.
603 * @param baseAddr Base address for current SIM instance.
604 * @param instance module device instance
605 * @return state true - ungated(Enabled), false - gated (Disabled)
607 bool SIM_HAL_GetPitGateCmd(uint32_t baseAddr
, uint32_t instance
);
610 * @brief Enable the clock for LPTIMER module.
612 * This function enables the clock for LPTIMER moudle.
614 * @param baseAddr Base address for current SIM instance.
615 * @param instance module device instance
617 void SIM_HAL_EnableLptimerClock(uint32_t baseAddr
, uint32_t instance
);
620 * @brief Disable the clock for LPTIMER module.
622 * This function disables the clock for LPTIMER moudle.
624 * @param baseAddr Base address for current SIM instance.
625 * @param instance module device instance
627 void SIM_HAL_DisableLptimerClock(uint32_t baseAddr
, uint32_t instance
);
630 * @brief Get the the clock gate state for LPTIMER module.
632 * This function will get the clock gate state for LPTIMER moudle.
634 * @param baseAddr Base address for current SIM instance.
635 * @param instance module device instance
636 * @return state true - ungated(Enabled), false - gated (Disabled)
638 bool SIM_HAL_GetLptimerGateCmd(uint32_t baseAddr
, uint32_t instance
);
641 * @brief Enable the clock for RTC module.
643 * This function enables the clock for RTC moudle.
645 * @param baseAddr Base address for current SIM instance.
646 * @param instance module device instance
648 void SIM_HAL_EnableRtcClock(uint32_t baseAddr
, uint32_t instance
);
651 * @brief Disable the clock for RTC module.
653 * This function disables the clock for RTC moudle.
655 * @param baseAddr Base address for current SIM instance.
656 * @param instance module device instance
658 void SIM_HAL_DisableRtcClock(uint32_t baseAddr
, uint32_t instance
);
661 * @brief Get the the clock gate state for RTC module.
663 * This function will get the clock gate state for RTC moudle.
665 * @param baseAddr Base address for current SIM instance.
666 * @param instance module device instance
667 * @return state true - ungated(Enabled), false - gated (Disabled)
669 bool SIM_HAL_GetRtcGateCmd(uint32_t baseAddr
, uint32_t instance
);
672 * @brief Enable the clock for USBFS module.
674 * This function enables the clock for USBFS moudle.
676 * @param baseAddr Base address for current SIM instance.
677 * @param instance module device instance
679 void SIM_HAL_EnableUsbClock(uint32_t baseAddr
, uint32_t instance
);
682 * @brief Disable the clock for USBFS module.
684 * This function disables the clock for USBFS moudle.
686 * @param baseAddr Base address for current SIM instance.
687 * @param instance module device instance
689 void SIM_HAL_DisableUsbClock(uint32_t baseAddr
, uint32_t instance
);
692 * @brief Get the the clock gate state for USB module.
694 * This function will get the clock gate state for USB moudle.
696 * @param baseAddr Base address for current SIM instance.
697 * @param instance module device instance
698 * @return state true - ungated(Enabled), false - gated (Disabled)
700 bool SIM_HAL_GetUsbGateCmd(uint32_t baseAddr
, uint32_t instance
);
703 * @brief Enable the clock for SPI module.
705 * This function enables the clock for SPI moudle.
707 * @param baseAddr Base address for current SIM instance.
708 * @param instance module device instance
710 void SIM_HAL_EnableSpiClock(uint32_t baseAddr
, uint32_t instance
);
713 * @brief Disable the clock for SPI module.
715 * This function disables the clock for SPI moudle.
717 * @param baseAddr Base address for current SIM instance.
718 * @param instance module device instance
720 void SIM_HAL_DisableSpiClock(uint32_t baseAddr
, uint32_t instance
);
723 * @brief Get the the clock gate state for SPI module.
725 * This function will get the clock gate state for SPI moudle.
727 * @param baseAddr Base address for current SIM instance.
728 * @param instance module device instance
729 * @return state true - ungated(Enabled), false - gated (Disabled)
731 bool SIM_HAL_GetSpiGateCmd(uint32_t baseAddr
, uint32_t instance
);
734 * @brief Enable the clock for I2C module.
736 * This function enables the clock for I2C moudle.
738 * @param baseAddr Base address for current SIM instance.
739 * @param instance module device instance
741 void SIM_HAL_EnableI2cClock(uint32_t baseAddr
, uint32_t instance
);
744 * @brief Disable the clock for I2C module.
746 * This function disables the clock for I2C moudle.
748 * @param baseAddr Base address for current SIM instance.
749 * @param instance module device instance
751 void SIM_HAL_DisableI2cClock(uint32_t baseAddr
, uint32_t instance
);
754 * @brief Get the the clock gate state for I2C module.
756 * This function will get the clock gate state for I2C moudle.
758 * @param baseAddr Base address for current SIM instance.
759 * @param instance module device instance
760 * @return state true - ungated(Enabled), false - gated (Disabled)
762 bool SIM_HAL_GetI2cGateCmd(uint32_t baseAddr
, uint32_t instance
);
765 * @brief Enable the clock for UART module.
767 * This function enables the clock for UART moudle.
769 * @param baseAddr Base address for current SIM instance.
770 * @param instance module device instance
772 void SIM_HAL_EnableUartClock(uint32_t baseAddr
, uint32_t instance
);
775 * @brief Disable the clock for UART module.
777 * This function disables the clock for UART moudle.
779 * @param baseAddr Base address for current SIM instance.
780 * @param instance module device instance
782 void SIM_HAL_DisableUartClock(uint32_t baseAddr
, uint32_t instance
);
785 * @brief Get the the clock gate state for UART module.
787 * This function will get the clock gate state for UART moudle.
789 * @param baseAddr Base address for current SIM instance.
790 * @param instance module device instance
791 * @return state true - ungated(Enabled), false - gated (Disabled)
793 bool SIM_HAL_GetUartGateCmd(uint32_t baseAddr
, uint32_t instance
);
796 * @brief Enable the clock for LPUART module.
798 * This function enables the clock for LPUART moudle.
800 * @param baseAddr Base address for current SIM instance.
801 * @param instance module device instance
803 void SIM_HAL_EnableLpuartClock(uint32_t baseAddr
, uint32_t instance
);
806 * @brief Disable the clock for LPUART module.
808 * This function disables the clock for LPUART moudle.
810 * @param baseAddr Base address for current SIM instance.
811 * @param instance module device instance
813 void SIM_HAL_DisableLpuartClock(uint32_t baseAddr
, uint32_t instance
);
816 * @brief Get the the clock gate state for LPUART module.
818 * This function will get the clock gate state for LPUART moudle.
820 * @param baseAddr Base address for current SIM instance.
821 * @param instance module device instance
822 * @return state true - ungated(Enabled), false - gated (Disabled)
824 bool SIM_HAL_GetLpuartGateCmd(uint32_t baseAddr
, uint32_t instance
);
828 #if defined(__cplusplus)
830 #endif /* __cplusplus*/
835 #endif /* __FSL_SIM_HAL_K22F51212_H__ */
836 /*******************************************************************************
838 ******************************************************************************/