
Marking local functions: DevAssert Lpuart_Uart_Ip_FlushRxBuffer Lpuart_Uart_Ip_FlushTxBuffer Lpuart_Uart_Ip_CheckTimeout Lpuart_Uart_Ip_StartTimeout Lpuart_Uart_Ip_ClearErrorFlags Lpuart_Uart_Ip_ClearStatusFlagWithMask Lpuart_Uart_Ip_ClearStatusFlag Lpuart_Uart_Ip_GetStatusFlag Lpuart_Uart_Ip_Getchar10 Lpuart_Uart_Ip_Getchar9 Lpuart_Uart_Ip_Getchar Lpuart_Uart_Ip_Putchar10 Lpuart_Uart_Ip_Putchar9 Lpuart_Uart_Ip_Putchar Lpuart_Uart_Ip_SetRxDmaCmd Lpuart_Uart_Ip_SetTxDmaCmd Lpuart_Uart_Ip_GetIntMode Lpuart_Uart_Ip_SetIntMode Lpuart_Uart_Ip_SetStopBitCount Lpuart_Uart_Ip_SetParityMode Lpuart_Uart_Ip_SetBitCountPerChar Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd Lpuart_Uart_Ip_SetOversamplingRatio Lpuart_Uart_Ip_SetBaudRateDivisor Lpuart_Uart_Ip_SetReceiverCmd Lpuart_Uart_Ip_SetTransmitterCmd Lpuart_Uart_Ip_Hw_Init


Marking externally visible functions: Lpuart_Uart_Ip_CompleteReceiveUsingDma Lpuart_Uart_Ip_CompleteSendUsingDma Lpuart_Uart_Ip_IrqHandler Lpuart_Uart_Ip_SetRxBuffer Lpuart_Uart_Ip_SetTxBuffer Lpuart_Uart_Ip_GetBaudRate Lpuart_Uart_Ip_SetBaudRate Lpuart_Uart_Ip_AbortReceivingData Lpuart_Uart_Ip_GetReceiveStatus Lpuart_Uart_Ip_AsyncReceive Lpuart_Uart_Ip_SyncReceive Lpuart_Uart_Ip_AbortSendingData Lpuart_Uart_Ip_GetTransmitStatus Lpuart_Uart_Ip_AsyncSend Lpuart_Uart_Ip_SyncSend Lpuart_Uart_Ip_Deinit Lpuart_Uart_Ip_Init


Marking externally visible variables: Lpuart_Uart_Ip_apUserConfig Lpuart_Uart_Ip_apStateStructure


Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:

Dma_Ip_GetLogicChannelStatus/82 (Dma_Ip_GetLogicChannelStatus) @0706c540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteSendUsingDma/57 
  Calls: 
Dma_Ip_SetLogicChannelTransferList/81 (Dma_Ip_SetLogicChannelTransferList) @0706c0e0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_StartSendDataUsingDma/55 
  Calls: 
SchM_Exit_Uart_UART_EXCLUSIVE_AREA_03/80 (SchM_Exit_Uart_UART_EXCLUSIVE_AREA_03) @0703dd20
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_AsyncReceive/42 Lpuart_Uart_Ip_AsyncReceive/42 
  Calls: 
SchM_Enter_Uart_UART_EXCLUSIVE_AREA_03/79 (SchM_Enter_Uart_UART_EXCLUSIVE_AREA_03) @0703dc40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_AsyncReceive/42 
  Calls: 
*.LC2/78 (*.LC2) @07041d38
  Type: variable definition analyzed
  Visibility: no_reorder prevailing_def_ironly artificial
  References: 
  Referring: Lpuart_Uart_Ip_StartGetData/41 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
*.LC1/77 (*.LC1) @07041ca8
  Type: variable definition analyzed
  Visibility: no_reorder prevailing_def_ironly artificial
  References: 
  Referring: Lpuart_Uart_Ip_StartGetData/41 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
*.LC0/76 (*.LC0) @07041c18
  Type: variable definition analyzed
  Visibility: no_reorder prevailing_def_ironly artificial
  References: 
  Referring: Lpuart_Uart_Ip_StartGetData/41 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
SchM_Exit_Uart_UART_EXCLUSIVE_AREA_02/75 (SchM_Exit_Uart_UART_EXCLUSIVE_AREA_02) @0703d700
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncReceive/40 
  Calls: 
SchM_Enter_Uart_UART_EXCLUSIVE_AREA_02/74 (SchM_Enter_Uart_UART_EXCLUSIVE_AREA_02) @0703d620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_SyncReceive/40 
  Calls: 
Dma_Ip_SetLogicChannelCommand/73 (Dma_Ip_SetLogicChannelCommand) @0703d380
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_StartSendDataUsingDma/55 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_AbortReceivingData/44 Lpuart_Uart_Ip_AbortSendingData/39 
  Calls: 
Dma_Ip_GetLogicChannelParam/72 (Dma_Ip_GetLogicChannelParam) @0703d1c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_GetReceiveStatus/43 Lpuart_Uart_Ip_GetTransmitStatus/38 
  Calls: 
SchM_Exit_Uart_UART_EXCLUSIVE_AREA_01/71 (SchM_Exit_Uart_UART_EXCLUSIVE_AREA_01) @0703d000
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_AsyncSend/37 Lpuart_Uart_Ip_AsyncSend/37 
  Calls: 
SchM_Enter_Uart_UART_EXCLUSIVE_AREA_01/70 (SchM_Enter_Uart_UART_EXCLUSIVE_AREA_01) @0702aee0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_AsyncSend/37 
  Calls: 
SchM_Exit_Uart_UART_EXCLUSIVE_AREA_00/69 (SchM_Exit_Uart_UART_EXCLUSIVE_AREA_00) @0702ac40
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 
  Calls: 
SchM_Enter_Uart_UART_EXCLUSIVE_AREA_00/68 (SchM_Enter_Uart_UART_EXCLUSIVE_AREA_00) @0702ab60
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_SyncSend/36 
  Calls: 
OsIf_GetElapsed/67 (OsIf_GetElapsed) @0702a8c0
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_CheckTimeout/26 
  Calls: 
OsIf_MicrosToTicks/66 (OsIf_MicrosToTicks) @0702a620
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_StartTimeout/25 
  Calls: 
OsIf_GetCounter/65 (OsIf_GetCounter) @0702a540
  Type: function
  Visibility: external public
  References: 
  Referring: 
  Availability: not_available
  Function flags:
  Called by: Lpuart_Uart_Ip_StartTimeout/25 
  Calls: 
Lpuart_Uart_Ip_GetData/64 (Lpuart_Uart_Ip_GetData) @06ff8a80
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_RxIrqHandler/50 Lpuart_Uart_Ip_StartGetData/41 
  Calls: Lpuart_Uart_Ip_Getchar10/20 Lpuart_Uart_Ip_Getchar9/19 Lpuart_Uart_Ip_Getchar/18 
Lpuart_Uart_Ip_PutData/63 (Lpuart_Uart_Ip_PutData) @06ff87e0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_TxEmptyIrqHandler/51 Lpuart_Uart_Ip_SyncSend/36 
  Calls: Lpuart_Uart_Ip_Putchar10/17 Lpuart_Uart_Ip_Putchar9/16 Lpuart_Uart_Ip_Putchar/15 
Lpuart_Uart_Ip_SetupIntDmaMode/62 (Lpuart_Uart_Ip_SetupIntDmaMode) @06ff8540
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 
  Calls: Lpuart_Uart_Ip_SetRxDmaCmd/14 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 
Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 (Lpuart_Uart_Ip_CompleteReceiveUsingDma) @06ff82a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_AbortReceivingData/44 
  Calls: Lpuart_Uart_Ip_Getchar/18 Lpuart_Uart_Ip_SetReceiverCmd/2 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_StartTimeout/25 Lpuart_Uart_Ip_SetupIntDmaMode/62 DevAssert/29 Dma_Ip_SetLogicChannelCommand/73 DevAssert/29 Dma_Ip_SetLogicChannelTransferList/81 DevAssert/29 Dma_Ip_SetLogicChannelCommand/73 Dma_Ip_GetLogicChannelStatus/82 
   Indirect call
   Indirect call
   Indirect call
Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 (Lpuart_Uart_Ip_CompleteReceiveDataUsingInt) @06ff8000
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_RxIrqHandler/50 Lpuart_Uart_Ip_AbortReceivingData/44 
  Calls: Lpuart_Uart_Ip_Getchar/18 Lpuart_Uart_Ip_SetReceiverCmd/2 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_StartTimeout/25 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 
Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 (Lpuart_Uart_Ip_StartReceiveDataUsingDma) @06fe3b60
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_AsyncReceive/42 
  Calls: Lpuart_Uart_Ip_SetupIntDmaMode/62 Lpuart_Uart_Ip_SetReceiverCmd/2 DevAssert/29 Dma_Ip_SetLogicChannelCommand/73 DevAssert/29 Dma_Ip_SetLogicChannelTransferList/81 Lpuart_Uart_Ip_FlushRxBuffer/28 Lpuart_Uart_Ip_ClearErrorFlags/24 
Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 (Lpuart_Uart_Ip_StartReceiveDataUsingInt) @06fe3620
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_AsyncReceive/42 
  Calls: Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetReceiverCmd/2 Lpuart_Uart_Ip_FlushRxBuffer/28 Lpuart_Uart_Ip_ClearErrorFlags/24 
Lpuart_Uart_Ip_CompleteSendUsingDma/57 (Lpuart_Uart_Ip_CompleteSendUsingDma) @06fe30e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_AbortSendingData/39 
  Calls: Lpuart_Uart_Ip_SetTransmitterCmd/1 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_StartTimeout/25 Lpuart_Uart_Ip_SetTxDmaCmd/13 DevAssert/29 Dma_Ip_SetLogicChannelCommand/73 DevAssert/29 Dma_Ip_SetLogicChannelTransferList/81 DevAssert/29 Dma_Ip_SetLogicChannelCommand/73 Dma_Ip_GetLogicChannelStatus/82 
   Indirect call
   Indirect call
   Indirect call
Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 (Lpuart_Uart_Ip_CompleteSendDataUsingInt) @06fe3d20
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_TxCompleteIrqHandler/52 Lpuart_Uart_Ip_AbortSendingData/39 
  Calls: Lpuart_Uart_Ip_SetTransmitterCmd/1 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_StartTimeout/25 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 
Lpuart_Uart_Ip_StartSendDataUsingDma/55 (Lpuart_Uart_Ip_StartSendDataUsingDma) @06fe3a80
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_AsyncSend/37 
  Calls: Lpuart_Uart_Ip_SetTxDmaCmd/13 Lpuart_Uart_Ip_SetTransmitterCmd/1 DevAssert/29 Dma_Ip_SetLogicChannelCommand/73 DevAssert/29 Dma_Ip_SetLogicChannelTransferList/81 
Lpuart_Uart_Ip_StartSendDataUsingInt/54 (Lpuart_Uart_Ip_StartSendDataUsingInt) @06fe37e0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_AsyncSend/37 
  Calls: Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetTransmitterCmd/1 
Lpuart_Uart_Ip_ErrIrqHandler/53 (Lpuart_Uart_Ip_ErrIrqHandler) @06fe3540
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_IrqHandler/49 
  Calls: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Dma_Ip_SetLogicChannelCommand/73 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_GetIntMode/12 Lpuart_Uart_Ip_ClearStatusFlag/22 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_GetIntMode/12 Lpuart_Uart_Ip_ClearStatusFlag/22 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_GetIntMode/12 Lpuart_Uart_Ip_ClearStatusFlag/22 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_GetIntMode/12 Lpuart_Uart_Ip_ClearStatusFlag/22 Lpuart_Uart_Ip_GetStatusFlag/21 
   Indirect call
Lpuart_Uart_Ip_TxCompleteIrqHandler/52 (Lpuart_Uart_Ip_TxCompleteIrqHandler) @06fe32a0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_IrqHandler/49 
  Calls: Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 
   Indirect call
Lpuart_Uart_Ip_TxEmptyIrqHandler/51 (Lpuart_Uart_Ip_TxEmptyIrqHandler) @06fe3000
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_IrqHandler/49 
  Calls: Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_PutData/63 
   Indirect call
Lpuart_Uart_Ip_RxIrqHandler/50 (Lpuart_Uart_Ip_RxIrqHandler) @06fd5b60
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_IrqHandler/49 
  Calls: Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_GetData/64 
   Indirect call
   Indirect call
Lpuart_Uart_Ip_IrqHandler/49 (Lpuart_Uart_Ip_IrqHandler) @06fd5620
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_TxCompleteIrqHandler/52 Lpuart_Uart_Ip_GetIntMode/12 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_TxEmptyIrqHandler/51 Lpuart_Uart_Ip_GetIntMode/12 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_Getchar/18 Lpuart_Uart_Ip_RxIrqHandler/50 Lpuart_Uart_Ip_GetIntMode/12 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ClearErrorFlags/24 Lpuart_Uart_Ip_Getchar/18 DevAssert/29 
Lpuart_Uart_Ip_SetRxBuffer/48 (Lpuart_Uart_Ip_SetRxBuffer) @06fd50e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_SetTxBuffer/47 (Lpuart_Uart_Ip_SetTxBuffer) @06fd5d20
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_GetBaudRate/46 (Lpuart_Uart_Ip_GetBaudRate) @06fd5a80
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_SetBaudRate/45 (Lpuart_Uart_Ip_SetBaudRate) @06fd57e0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_SetBaudRateDivisor/3 Lpuart_Uart_Ip_SetOversamplingRatio/5 Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd/7 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_AbortReceivingData/44 (Lpuart_Uart_Ip_AbortReceivingData) @06fd5540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_FlushRxBuffer/28 Lpuart_Uart_Ip_ClearErrorFlags/24 Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Dma_Ip_SetLogicChannelCommand/73 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_GetReceiveStatus/43 (Lpuart_Uart_Ip_GetReceiveStatus) @06fd52a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Dma_Ip_GetLogicChannelParam/72 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_AsyncReceive/42 (Lpuart_Uart_Ip_AsyncReceive) @06fd5000
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apUserConfig/32 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 DevAssert/29 DevAssert/29 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_03/80 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_03/80 SchM_Enter_Uart_UART_EXCLUSIVE_AREA_03/79 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_StartGetData/41 (Lpuart_Uart_Ip_StartGetData) @06d229a0
  Type: function definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apBases/33 (read)*.LC0/76 (read)*.LC1/77 (read)*.LC2/78 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: Lpuart_Uart_Ip_SyncReceive/40 
  Calls: Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetData/64 Lpuart_Uart_Ip_ClearStatusFlagWithMask/23 Lpuart_Uart_Ip_SetReceiverCmd/2 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetStatusFlag/21 
Lpuart_Uart_Ip_SyncReceive/40 (Lpuart_Uart_Ip_SyncReceive) @06d22380
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_Getchar/18 Lpuart_Uart_Ip_SetReceiverCmd/2 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_StartGetData/41 Lpuart_Uart_Ip_StartTimeout/25 Lpuart_Uart_Ip_SetReceiverCmd/2 Lpuart_Uart_Ip_SetIntMode/11 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_02/75 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_02/75 SchM_Enter_Uart_UART_EXCLUSIVE_AREA_02/74 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_AbortSendingData/39 (Lpuart_Uart_Ip_AbortSendingData) @06d22e00
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_FlushTxBuffer/27 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Dma_Ip_SetLogicChannelCommand/73 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_GetTransmitStatus/38 (Lpuart_Uart_Ip_GetTransmitStatus) @06d22b60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Dma_Ip_GetLogicChannelParam/72 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_AsyncSend/37 (Lpuart_Uart_Ip_AsyncSend) @06d228c0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apUserConfig/32 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_StartSendDataUsingDma/55 Lpuart_Uart_Ip_StartSendDataUsingInt/54 DevAssert/29 DevAssert/29 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_01/71 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_01/71 SchM_Enter_Uart_UART_EXCLUSIVE_AREA_01/70 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_SyncSend/36 (Lpuart_Uart_Ip_SyncSend) @06d22540
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_SetTransmitterCmd/1 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_PutData/63 Lpuart_Uart_Ip_StartTimeout/25 Lpuart_Uart_Ip_SetTransmitterCmd/1 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_00/69 SchM_Exit_Uart_UART_EXCLUSIVE_AREA_00/69 SchM_Enter_Uart_UART_EXCLUSIVE_AREA_00/68 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_Deinit/35 (Lpuart_Uart_Ip_Deinit) @06d222a0
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_SetIntMode/11 Lpuart_Uart_Ip_CheckTimeout/26 Lpuart_Uart_Ip_GetStatusFlag/21 Lpuart_Uart_Ip_StartTimeout/25 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_Init/34 (Lpuart_Uart_Ip_Init) @06d1bb60
  Type: function definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apBases/33 (read)Lpuart_Uart_Ip_apStateStructuresArray/31 (write)Lpuart_Uart_Ip_apStateStructuresArray/31 (read)Lpuart_Uart_Ip_apUserConfig/32 (write)
  Referring: 
  Availability: available
  Function flags: body
  Called by: 
  Calls: Lpuart_Uart_Ip_SetStopBitCount/10 Lpuart_Uart_Ip_SetParityMode/9 Lpuart_Uart_Ip_SetBitCountPerChar/8 Lpuart_Uart_Ip_SetBitCountPerChar/8 Lpuart_Uart_Ip_SetBaudRateDivisor/3 Lpuart_Uart_Ip_SetOversamplingRatio/5 Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd/7 Lpuart_Uart_Ip_Hw_Init/0 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 DevAssert/29 
Lpuart_Uart_Ip_apBases/33 (Lpuart_Uart_Ip_apBases) @06cd0558
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Lpuart_Uart_Ip_Init/34 (read)Lpuart_Uart_Ip_Deinit/35 (read)Lpuart_Uart_Ip_SyncSend/36 (read)Lpuart_Uart_Ip_AbortSendingData/39 (read)Lpuart_Uart_Ip_SyncReceive/40 (read)Lpuart_Uart_Ip_StartGetData/41 (read)Lpuart_Uart_Ip_AbortReceivingData/44 (read)Lpuart_Uart_Ip_SetBaudRate/45 (read)Lpuart_Uart_Ip_IrqHandler/49 (read)Lpuart_Uart_Ip_TxEmptyIrqHandler/51 (read)Lpuart_Uart_Ip_ErrIrqHandler/53 (read)Lpuart_Uart_Ip_StartSendDataUsingInt/54 (read)Lpuart_Uart_Ip_StartSendDataUsingDma/55 (read)Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 (read)Lpuart_Uart_Ip_CompleteSendUsingDma/57 (read)Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 (read)Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 (read)Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 (read)Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 (read)Lpuart_Uart_Ip_SetupIntDmaMode/62 (read)Lpuart_Uart_Ip_PutData/63 (read)Lpuart_Uart_Ip_GetData/64 (read)
  Availability: available
  Varpool flags: initialized read-only const-value-known
Lpuart_Uart_Ip_apUserConfig/32 (Lpuart_Uart_Ip_apUserConfig) @06cd04c8
  Type: variable definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: Lpuart_Uart_Ip_Init/34 (write)Lpuart_Uart_Ip_AsyncSend/37 (read)Lpuart_Uart_Ip_GetTransmitStatus/38 (read)Lpuart_Uart_Ip_AbortSendingData/39 (read)Lpuart_Uart_Ip_AsyncReceive/42 (read)Lpuart_Uart_Ip_GetReceiveStatus/43 (read)Lpuart_Uart_Ip_AbortReceivingData/44 (read)Lpuart_Uart_Ip_RxIrqHandler/50 (read)Lpuart_Uart_Ip_TxEmptyIrqHandler/51 (read)Lpuart_Uart_Ip_TxCompleteIrqHandler/52 (read)Lpuart_Uart_Ip_ErrIrqHandler/53 (read)Lpuart_Uart_Ip_StartSendDataUsingDma/55 (read)Lpuart_Uart_Ip_CompleteSendUsingDma/57 (read)Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 (read)Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 (read)Lpuart_Uart_Ip_PutData/63 (read)Lpuart_Uart_Ip_GetData/64 (read)
  Availability: available
  Varpool flags:
Lpuart_Uart_Ip_apStateStructuresArray/31 (Lpuart_Uart_Ip_apStateStructuresArray) @06cd0438
  Type: variable definition analyzed
  Visibility: force_output no_reorder prevailing_def_ironly
  References: 
  Referring: Lpuart_Uart_Ip_Init/34 (read)Lpuart_Uart_Ip_Init/34 (write)Lpuart_Uart_Ip_Init/34 (read)Lpuart_Uart_Ip_Deinit/35 (read)Lpuart_Uart_Ip_Deinit/35 (write)Lpuart_Uart_Ip_SyncSend/36 (read)Lpuart_Uart_Ip_AsyncSend/37 (read)Lpuart_Uart_Ip_GetTransmitStatus/38 (read)Lpuart_Uart_Ip_AbortSendingData/39 (read)Lpuart_Uart_Ip_SyncReceive/40 (read)Lpuart_Uart_Ip_StartGetData/41 (read)Lpuart_Uart_Ip_AsyncReceive/42 (read)Lpuart_Uart_Ip_GetReceiveStatus/43 (read)Lpuart_Uart_Ip_AbortReceivingData/44 (read)Lpuart_Uart_Ip_SetBaudRate/45 (read)Lpuart_Uart_Ip_GetBaudRate/46 (read)Lpuart_Uart_Ip_SetTxBuffer/47 (read)Lpuart_Uart_Ip_SetRxBuffer/48 (read)Lpuart_Uart_Ip_IrqHandler/49 (read)Lpuart_Uart_Ip_RxIrqHandler/50 (read)Lpuart_Uart_Ip_TxEmptyIrqHandler/51 (read)Lpuart_Uart_Ip_TxCompleteIrqHandler/52 (read)Lpuart_Uart_Ip_ErrIrqHandler/53 (read)Lpuart_Uart_Ip_StartSendDataUsingInt/54 (read)Lpuart_Uart_Ip_StartSendDataUsingDma/55 (read)Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 (read)Lpuart_Uart_Ip_CompleteSendUsingDma/57 (read)Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 (read)Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 (read)Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 (read)Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 (read)Lpuart_Uart_Ip_PutData/63 (read)Lpuart_Uart_Ip_GetData/64 (read)
  Availability: available
  Varpool flags:
Lpuart_Uart_Ip_apStateStructure/30 (Lpuart_Uart_Ip_apStateStructure) @06cd03a8
  Type: variable definition analyzed
  Visibility: force_output externally_visible no_reorder public
  References: 
  Referring: 
  Availability: available
  Varpool flags:
DevAssert/29 (DevAssert) @06cccee0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_StartSendDataUsingDma/55 Lpuart_Uart_Ip_StartSendDataUsingDma/55 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_SetRxBuffer/48 Lpuart_Uart_Ip_SetRxBuffer/48 Lpuart_Uart_Ip_SetRxBuffer/48 Lpuart_Uart_Ip_SetTxBuffer/47 Lpuart_Uart_Ip_SetTxBuffer/47 Lpuart_Uart_Ip_SetTxBuffer/47 Lpuart_Uart_Ip_GetBaudRate/46 Lpuart_Uart_Ip_GetBaudRate/46 Lpuart_Uart_Ip_SetBaudRate/45 Lpuart_Uart_Ip_SetBaudRate/45 Lpuart_Uart_Ip_SetBaudRate/45 Lpuart_Uart_Ip_SetBaudRate/45 Lpuart_Uart_Ip_AbortReceivingData/44 Lpuart_Uart_Ip_AbortReceivingData/44 Lpuart_Uart_Ip_AbortReceivingData/44 Lpuart_Uart_Ip_GetReceiveStatus/43 Lpuart_Uart_Ip_GetReceiveStatus/43 Lpuart_Uart_Ip_GetReceiveStatus/43 Lpuart_Uart_Ip_AsyncReceive/42 Lpuart_Uart_Ip_AsyncReceive/42 Lpuart_Uart_Ip_AsyncReceive/42 Lpuart_Uart_Ip_AsyncReceive/42 Lpuart_Uart_Ip_AsyncReceive/42 Lpuart_Uart_Ip_AsyncReceive/42 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_AbortSendingData/39 Lpuart_Uart_Ip_AbortSendingData/39 Lpuart_Uart_Ip_AbortSendingData/39 Lpuart_Uart_Ip_GetTransmitStatus/38 Lpuart_Uart_Ip_GetTransmitStatus/38 Lpuart_Uart_Ip_GetTransmitStatus/38 Lpuart_Uart_Ip_AsyncSend/37 Lpuart_Uart_Ip_AsyncSend/37 Lpuart_Uart_Ip_AsyncSend/37 Lpuart_Uart_Ip_AsyncSend/37 Lpuart_Uart_Ip_AsyncSend/37 Lpuart_Uart_Ip_AsyncSend/37 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Init/34 Lpuart_Uart_Ip_Init/34 Lpuart_Uart_Ip_Init/34 Lpuart_Uart_Ip_Init/34 Lpuart_Uart_Ip_Init/34 Lpuart_Uart_Ip_Init/34 Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_FlushRxBuffer/28 (Lpuart_Uart_Ip_FlushRxBuffer) @06b7e2a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_AbortReceivingData/44 
  Calls: 
Lpuart_Uart_Ip_FlushTxBuffer/27 (Lpuart_Uart_Ip_FlushTxBuffer) @06b7e000
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_AbortSendingData/39 
  Calls: 
Lpuart_Uart_Ip_CheckTimeout/26 (Lpuart_Uart_Ip_CheckTimeout) @06b78d20
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 Lpuart_Uart_Ip_StartGetData/41 Lpuart_Uart_Ip_StartGetData/41 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_Deinit/35 
  Calls: OsIf_GetElapsed/67 
Lpuart_Uart_Ip_StartTimeout/25 (Lpuart_Uart_Ip_StartTimeout) @06b78a80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_Deinit/35 
  Calls: OsIf_MicrosToTicks/66 OsIf_GetCounter/65 
Lpuart_Uart_Ip_ClearErrorFlags/24 (Lpuart_Uart_Ip_ClearErrorFlags) @06b787e0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_AbortReceivingData/44 
  Calls: 
Lpuart_Uart_Ip_ClearStatusFlagWithMask/23 (Lpuart_Uart_Ip_ClearStatusFlagWithMask) @06b78540
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_StartGetData/41 
  Calls: 
Lpuart_Uart_Ip_ClearStatusFlag/22 (Lpuart_Uart_Ip_ClearStatusFlag) @06b782a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 
  Calls: 
Lpuart_Uart_Ip_GetStatusFlag/21 (Lpuart_Uart_Ip_GetStatusFlag) @06b78000
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_StartGetData/41 Lpuart_Uart_Ip_StartGetData/41 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_Deinit/35 
  Calls: 
Lpuart_Uart_Ip_Getchar10/20 (Lpuart_Uart_Ip_Getchar10) @06b71d20
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_GetData/64 
  Calls: 
Lpuart_Uart_Ip_Getchar9/19 (Lpuart_Uart_Ip_Getchar9) @06b71a80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_GetData/64 
  Calls: 
Lpuart_Uart_Ip_Getchar/18 (Lpuart_Uart_Ip_Getchar) @06b717e0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_GetData/64 Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_SyncReceive/40 
  Calls: 
Lpuart_Uart_Ip_Putchar10/17 (Lpuart_Uart_Ip_Putchar10) @06b71540
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_PutData/63 
  Calls: 
Lpuart_Uart_Ip_Putchar9/16 (Lpuart_Uart_Ip_Putchar9) @06b712a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_PutData/63 
  Calls: 
Lpuart_Uart_Ip_Putchar/15 (Lpuart_Uart_Ip_Putchar) @06b71000
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_PutData/63 
  Calls: 
Lpuart_Uart_Ip_SetRxDmaCmd/14 (Lpuart_Uart_Ip_SetRxDmaCmd) @06b6cd20
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_SetupIntDmaMode/62 
  Calls: 
Lpuart_Uart_Ip_SetTxDmaCmd/13 (Lpuart_Uart_Ip_SetTxDmaCmd) @06b6ca80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_StartSendDataUsingDma/55 
  Calls: 
Lpuart_Uart_Ip_GetIntMode/12 (Lpuart_Uart_Ip_GetIntMode) @06b6c7e0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_ErrIrqHandler/53 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_IrqHandler/49 Lpuart_Uart_Ip_IrqHandler/49 
  Calls: 
Lpuart_Uart_Ip_SetIntMode/11 (Lpuart_Uart_Ip_SetIntMode) @06b6c540
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_SetupIntDmaMode/62 Lpuart_Uart_Ip_SetupIntDmaMode/62 Lpuart_Uart_Ip_SetupIntDmaMode/62 Lpuart_Uart_Ip_SetupIntDmaMode/62 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 Lpuart_Uart_Ip_StartSendDataUsingInt/54 Lpuart_Uart_Ip_TxEmptyIrqHandler/51 Lpuart_Uart_Ip_TxEmptyIrqHandler/51 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Deinit/35 Lpuart_Uart_Ip_Deinit/35 
  Calls: 
Lpuart_Uart_Ip_SetStopBitCount/10 (Lpuart_Uart_Ip_SetStopBitCount) @06b6c2a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_SetParityMode/9 (Lpuart_Uart_Ip_SetParityMode) @06b6c000
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_SetBitCountPerChar/8 (Lpuart_Uart_Ip_SetBitCountPerChar) @06b67d20
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_Init/34 Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd/7 (Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd) @06b67a80
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_SetBaudRate/45 Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_SetOversamplingRatio/5 (Lpuart_Uart_Ip_SetOversamplingRatio) @06b67540
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_SetBaudRate/45 Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_SetBaudRateDivisor/3 (Lpuart_Uart_Ip_SetBaudRateDivisor) @06ac0ee0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_SetBaudRate/45 Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_SetReceiverCmd/2 (Lpuart_Uart_Ip_SetReceiverCmd) @06ac0c40
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_CompleteReceiveUsingDma/61 Lpuart_Uart_Ip_CompleteReceiveDataUsingInt/60 Lpuart_Uart_Ip_StartReceiveDataUsingDma/59 Lpuart_Uart_Ip_StartReceiveDataUsingInt/58 Lpuart_Uart_Ip_StartGetData/41 Lpuart_Uart_Ip_SyncReceive/40 Lpuart_Uart_Ip_SyncReceive/40 
  Calls: 
Lpuart_Uart_Ip_SetTransmitterCmd/1 (Lpuart_Uart_Ip_SetTransmitterCmd) @06ac09a0
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_CompleteSendUsingDma/57 Lpuart_Uart_Ip_CompleteSendDataUsingInt/56 Lpuart_Uart_Ip_StartSendDataUsingDma/55 Lpuart_Uart_Ip_StartSendDataUsingInt/54 Lpuart_Uart_Ip_SyncSend/36 Lpuart_Uart_Ip_SyncSend/36 
  Calls: 
Lpuart_Uart_Ip_Hw_Init/0 (Lpuart_Uart_Ip_Hw_Init) @06ac0700
  Type: function definition analyzed
  Visibility: no_reorder prevailing_def_ironly
  References: 
  Referring: 
  Availability: local
  Function flags: body local
  Called by: Lpuart_Uart_Ip_Init/34 
  Calls: 
Lpuart_Uart_Ip_GetData (const uint8 Instance)
{
  uint16 Data16b;
  const struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = UartUserCfg->BitCountPerChar;
  if (_4 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 3>; [INV]

  <bb 3> :
  _5 = UartUserCfg->BitCountPerChar;
  if (_5 == 1)
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 4> :
  _6 = UartState->RxBuff;
  _7 = Lpuart_Uart_Ip_Getchar (Base);
  *_6 = _7;
  _8 = UartUserCfg->BitCountPerChar;
  if (_8 == 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _9 = UartState->RxBuff;
  _10 = *_9;
  _11 = UartState->RxBuff;
  _12 = _10 & 127;
  *_11 = _12;

  <bb 6> :
  _13 = UartState->RxBuff;
  _14 = _13 + 1;
  UartState->RxBuff = _14;
  _15 = UartState->RxSize;
  _16 = _15 + 4294967295;
  UartState->RxSize = _16;
  goto <bb 13>; [INV]

  <bb 7> :
  _17 = UartUserCfg->BitCountPerChar;
  if (_17 == 2)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  Data16b = Lpuart_Uart_Ip_Getchar9 (Base);
  goto <bb 10>; [INV]

  <bb 9> :
  Data16b = Lpuart_Uart_Ip_Getchar10 (Base);

  <bb 10> :
  _18 = UartState->RxSize;
  if (_18 == 1)
    goto <bb 11>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 11> :
  _19 = UartState->RxBuff;
  _20 = (unsigned char) Data16b;
  *_19 = _20;
  _21 = UartState->RxBuff;
  _22 = _21 + 1;
  UartState->RxBuff = _22;
  _23 = UartState->RxSize;
  _24 = _23 + 4294967295;
  UartState->RxSize = _24;
  goto <bb 13>; [INV]

  <bb 12> :
  _25 = UartState->RxBuff;
  _26 = (unsigned char) Data16b;
  *_25 = _26;
  _27 = UartState->RxBuff;
  _28 = _27 + 1;
  UartState->RxBuff = _28;
  _29 = Data16b >> 8;
  _30 = UartState->RxBuff;
  _31 = (unsigned char) _29;
  *_30 = _31;
  _32 = UartState->RxBuff;
  _33 = _32 + 1;
  UartState->RxBuff = _33;
  _34 = UartState->RxSize;
  _35 = _34 + 4294967294;
  UartState->RxSize = _35;

  <bb 13> :
  return;

}


Lpuart_Uart_Ip_PutData (const uint8 Instance)
{
  uint8 Data8b;
  uint16 Data16b;
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = UartUserCfg->BitCountPerChar;
  if (_4 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 3>; [INV]

  <bb 3> :
  _5 = UartUserCfg->BitCountPerChar;
  if (_5 == 1)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _6 = UartState->TxBuff;
  Data8b = *_6;
  _7 = UartState->TxBuff;
  _8 = _7 + 1;
  UartState->TxBuff = _8;
  _9 = UartState->TxSize;
  _10 = _9 + 4294967295;
  UartState->TxSize = _10;
  Lpuart_Uart_Ip_Putchar (Base, Data8b);
  goto <bb 11>; [INV]

  <bb 5> :
  _11 = UartState->TxBuff;
  _12 = *_11;
  Data16b = (uint16) _12;
  _13 = UartState->TxSize;
  if (_13 == 1)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  _14 = UartState->TxBuff;
  _15 = _14 + 1;
  UartState->TxBuff = _15;
  _16 = UartState->TxSize;
  _17 = _16 + 4294967295;
  UartState->TxSize = _17;
  goto <bb 8>; [INV]

  <bb 7> :
  _18 = UartState->TxBuff;
  _19 = _18 + 1;
  UartState->TxBuff = _19;
  _20 = UartState->TxBuff;
  _21 = *_20;
  _22 = (short unsigned int) _21;
  _23 = _22 << 8;
  Data16b = Data16b | _23;
  _24 = UartState->TxBuff;
  _25 = _24 + 1;
  UartState->TxBuff = _25;
  _26 = UartState->TxSize;
  _27 = _26 + 4294967294;
  UartState->TxSize = _27;

  <bb 8> :
  _28 = UartUserCfg->BitCountPerChar;
  if (_28 == 2)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  Lpuart_Uart_Ip_Putchar9 (Base, Data16b);
  goto <bb 11>; [INV]

  <bb 10> :
  Lpuart_Uart_Ip_Putchar10 (Base, Data16b);

  <bb 11> :
  return;

}


Lpuart_Uart_Ip_SetupIntDmaMode (const uint8 Instance, boolean Enable)
{
  struct LPUART_Type * Base;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  Lpuart_Uart_Ip_SetIntMode (Base, 27, Enable);
  Lpuart_Uart_Ip_SetIntMode (Base, 24, Enable);
  Lpuart_Uart_Ip_SetIntMode (Base, 26, Enable);
  Lpuart_Uart_Ip_SetIntMode (Base, 25, Enable);
  Lpuart_Uart_Ip_SetRxDmaCmd (Base, Enable);
  return;

}


Lpuart_Uart_Ip_CompleteReceiveUsingDma (uint8 Instance)
{
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  struct Dma_Ip_LogicChannelStatusType DmaStatus;
  Dma_Ip_ReturnType DmaReturnStatus;
  struct Dma_Ip_LogicChannelTransferListType DmaTransferList[10];
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  ElapsedTicks = 0;
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = UartUserCfg->RxDMAChannel;
  Dma_Ip_GetLogicChannelStatus (_4, &DmaStatus);
  _5 = DmaStatus.ChStateValue;
  if (_5 == 4)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _6 = UartUserCfg->RxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelCommand (_6, 4);
  _7 = DmaReturnStatus == 0;
  DevAssert (_7);
  UartState->ReceiveStatus = 1;
  _8 = UartUserCfg->Callback;
  if (_8 != 0B)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _9 = UartUserCfg->Callback;
  _10 = UartUserCfg->CallbackParam;
  _9 (Instance, 3, _10);

  <bb 5> :
  _11 = UartState->ReceiveStatus;
  if (_11 == 2)
    goto <bb 6>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 6> :
  _12 = UartUserCfg->Callback;
  if (_12 != 0B)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  _13 = UartUserCfg->Callback;
  _14 = UartUserCfg->CallbackParam;
  _13 (Instance, 0, _14);

  <bb 8> :
  _15 = UartState->RxSize;
  if (_15 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 9> :
  _16 = UartState->ReceiveStatus;
  if (_16 != 1)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  DmaTransferList[0].Param = 5;
  _17 = UartState->RxBuff;
  _18 = (long unsigned int) _17;
  DmaTransferList[0].Value = _18;
  DmaTransferList[1].Param = 18;
  _19 = UartState->RxSize;
  DmaTransferList[1].Value = _19;
  _20 = UartUserCfg->RxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelTransferList (_20, &DmaTransferList, 2);
  _21 = DmaReturnStatus == 0;
  DevAssert (_21);
  UartState->RxSize = 0;
  _22 = UartUserCfg->RxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelCommand (_22, 0);
  _23 = DmaReturnStatus == 0;
  DevAssert (_23);
  goto <bb 20>; [INV]

  <bb 11> :
  Lpuart_Uart_Ip_SetupIntDmaMode (Instance, 0);
  _24 = UartState->ReceiveStatus;
  if (_24 == 6)
    goto <bb 12>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 12> :
  Lpuart_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, 500000, 0);

  <bb 13> :
  _25 = Lpuart_Uart_Ip_GetStatusFlag (Base, 21);
  _26 = ~_25;
  if (_26 != 0)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  TimeoutTicks.26_27 = TimeoutTicks;
  _28 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.26_27, 0);
  _29 = ~_28;
  if (_29 != 0)
    goto <bb 13>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 15> :
  TimeoutTicks.27_30 = TimeoutTicks;
  _31 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.27_30, 0);
  if (_31 != 0)
    goto <bb 16>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 16> :
  UartState->ReceiveStatus = 1;

  <bb 17> :
  Lpuart_Uart_Ip_SetReceiverCmd (Base, 0);
  Lpuart_Uart_Ip_Getchar (Base);
  UartState->IsRxBusy = 0;
  _32 = UartState->ReceiveStatus;
  if (_32 == 2)
    goto <bb 18>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 18> :
  UartState->ReceiveStatus = 0;
  _33 = UartUserCfg->Callback;
  if (_33 != 0B)
    goto <bb 19>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 19> :
  _34 = UartUserCfg->Callback;
  _35 = UartUserCfg->CallbackParam;
  _34 (Instance, 2, _35);

  <bb 20> :
  DmaTransferList = {CLOBBER};
  DmaStatus = {CLOBBER};
  StartTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  ElapsedTicks = {CLOBBER};
  return;

}


Lpuart_Uart_Ip_CompleteReceiveDataUsingInt (const uint8 Instance)
{
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  struct LPUART_Type * Base;

  <bb 2> :
  ElapsedTicks = 0;
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  Lpuart_Uart_Ip_SetIntMode (Base, 27, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 24, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 26, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 25, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 21, 0);
  _3 = UartState->ReceiveStatus;
  if (_3 == 6)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  Lpuart_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, 500000, 0);

  <bb 4> :
  _4 = Lpuart_Uart_Ip_GetStatusFlag (Base, 21);
  _5 = ~_4;
  if (_5 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  TimeoutTicks.24_6 = TimeoutTicks;
  _7 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.24_6, 0);
  _8 = ~_7;
  if (_8 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 6> :
  TimeoutTicks.25_9 = TimeoutTicks;
  _10 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.25_9, 0);
  if (_10 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  UartState->ReceiveStatus = 1;

  <bb 8> :
  Lpuart_Uart_Ip_SetReceiverCmd (Base, 0);
  Lpuart_Uart_Ip_Getchar (Base);
  UartState->IsRxBusy = 0;
  _11 = UartState->ReceiveStatus;
  if (_11 == 2)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  UartState->ReceiveStatus = 0;

  <bb 10> :
  StartTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  ElapsedTicks = {CLOBBER};
  return;

}


Lpuart_Uart_Ip_StartReceiveDataUsingDma (const uint8 Instance, uint8 * RxBuff, const uint32 RxSize)
{
  Dma_Ip_ReturnType DmaReturnStatus;
  struct Dma_Ip_LogicChannelTransferListType DmaTransferList[10];
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6930;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  Lpuart_Uart_Ip_ClearErrorFlags (Base);
  Lpuart_Uart_Ip_FlushRxBuffer (Base);
  DmaTransferList[0].Param = 0;
  _4 = &Base->DATA;
  _5 = (long unsigned int) _4;
  DmaTransferList[0].Value = _5;
  DmaTransferList[1].Param = 5;
  RxBuff.23_6 = (long unsigned int) RxBuff;
  DmaTransferList[1].Value = RxBuff.23_6;
  DmaTransferList[2].Param = 1;
  DmaTransferList[2].Value = 0;
  DmaTransferList[3].Param = 6;
  DmaTransferList[3].Value = 1;
  DmaTransferList[4].Param = 18;
  DmaTransferList[4].Value = RxSize;
  DmaTransferList[5].Param = 15;
  DmaTransferList[5].Value = 1;
  DmaTransferList[6].Param = 8;
  DmaTransferList[6].Value = 0;
  DmaTransferList[7].Param = 3;
  DmaTransferList[7].Value = 0;
  DmaTransferList[8].Param = 21;
  DmaTransferList[8].Value = 1;
  DmaTransferList[9].Param = 23;
  DmaTransferList[9].Value = 1;
  UartState->RxBuff = RxBuff;
  UartState->RxSize = 0;
  UartState->IsRxBusy = 1;
  UartState->ReceiveStatus = 2;
  _7 = UartUserCfg->RxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelTransferList (_7, &DmaTransferList, 10);
  _8 = DmaReturnStatus == 0;
  DevAssert (_8);
  _9 = UartUserCfg->RxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelCommand (_9, 0);
  _10 = DmaReturnStatus == 0;
  DevAssert (_10);
  Lpuart_Uart_Ip_SetReceiverCmd (Base, 1);
  Lpuart_Uart_Ip_SetupIntDmaMode (Instance, 1);
  D.6930 = 0;
  DmaTransferList = {CLOBBER};

  <bb 3> :
<L1>:
  return D.6930;

}


Lpuart_Uart_Ip_StartReceiveDataUsingInt (const uint8 Instance, uint8 * RxBuff, const uint32 RxSize)
{
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  struct LPUART_Type * Base;
  Lpuart_Uart_Ip_StatusType D.6928;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  UartState->IsRxBusy = 1;
  UartState->RxBuff = RxBuff;
  UartState->RxSize = RxSize;
  UartState->ReceiveStatus = 2;
  Lpuart_Uart_Ip_ClearErrorFlags (Base);
  Lpuart_Uart_Ip_FlushRxBuffer (Base);
  Lpuart_Uart_Ip_SetReceiverCmd (Base, 1);
  Lpuart_Uart_Ip_SetIntMode (Base, 27, 1);
  Lpuart_Uart_Ip_SetIntMode (Base, 24, 1);
  Lpuart_Uart_Ip_SetIntMode (Base, 26, 1);
  Lpuart_Uart_Ip_SetIntMode (Base, 25, 1);
  Lpuart_Uart_Ip_SetIntMode (Base, 21, 1);
  D.6928 = 0;

  <bb 3> :
<L0>:
  return D.6928;

}


Lpuart_Uart_Ip_CompleteSendUsingDma (uint8 Instance)
{
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  struct Dma_Ip_LogicChannelStatusType DmaStatus;
  Dma_Ip_ReturnType DmaReturnStatus;
  struct Dma_Ip_LogicChannelTransferListType DmaTransferList[10];
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  ElapsedTicks = 0;
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = UartUserCfg->TxDMAChannel;
  Dma_Ip_GetLogicChannelStatus (_4, &DmaStatus);
  _5 = DmaStatus.ChStateValue;
  if (_5 == 4)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _6 = UartUserCfg->TxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelCommand (_6, 4);
  _7 = DmaReturnStatus == 0;
  DevAssert (_7);
  UartState->TransmitStatus = 1;
  _8 = UartUserCfg->Callback;
  if (_8 != 0B)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _9 = UartUserCfg->Callback;
  _10 = UartUserCfg->CallbackParam;
  _9 (Instance, 3, _10);

  <bb 5> :
  _11 = UartState->TransmitStatus;
  if (_11 == 2)
    goto <bb 6>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 6> :
  _12 = UartUserCfg->Callback;
  if (_12 != 0B)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  _13 = UartUserCfg->Callback;
  _14 = UartUserCfg->CallbackParam;
  _13 (Instance, 1, _14);

  <bb 8> :
  _15 = UartState->TxSize;
  if (_15 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 9> :
  _16 = UartState->TransmitStatus;
  if (_16 != 1)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  DmaTransferList[0].Param = 0;
  _17 = UartState->TxBuff;
  _18 = (long unsigned int) _17;
  DmaTransferList[0].Value = _18;
  DmaTransferList[1].Param = 18;
  _19 = UartState->TxSize;
  DmaTransferList[1].Value = _19;
  _20 = UartUserCfg->TxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelTransferList (_20, &DmaTransferList, 2);
  _21 = DmaReturnStatus == 0;
  DevAssert (_21);
  UartState->TxSize = 0;
  _22 = UartUserCfg->TxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelCommand (_22, 0);
  _23 = DmaReturnStatus == 0;
  DevAssert (_23);
  goto <bb 20>; [INV]

  <bb 11> :
  Lpuart_Uart_Ip_SetTxDmaCmd (Base, 0);
  Lpuart_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, 500000, 0);

  <bb 12> :
  _24 = Lpuart_Uart_Ip_GetStatusFlag (Base, 22);
  _25 = ~_24;
  if (_25 != 0)
    goto <bb 13>; [INV]
  else
    goto <bb 14>; [INV]

  <bb 13> :
  TimeoutTicks.21_26 = TimeoutTicks;
  _27 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.21_26, 0);
  _28 = ~_27;
  if (_28 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 14>; [INV]

  <bb 14> :
  TimeoutTicks.22_29 = TimeoutTicks;
  _30 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.22_29, 0);
  if (_30 != 0)
    goto <bb 15>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 15> :
  UartState->TransmitStatus = 1;

  <bb 16> :
  Lpuart_Uart_Ip_SetTransmitterCmd (Base, 0);
  _31 = UartState->TransmitStatus;
  if (_31 == 2)
    goto <bb 17>; [INV]
  else
    goto <bb 19>; [INV]

  <bb 17> :
  UartState->TransmitStatus = 0;
  _32 = UartUserCfg->Callback;
  if (_32 != 0B)
    goto <bb 18>; [INV]
  else
    goto <bb 19>; [INV]

  <bb 18> :
  _33 = UartUserCfg->Callback;
  _34 = UartUserCfg->CallbackParam;
  _33 (Instance, 2, _34);

  <bb 19> :
  UartState->IsTxBusy = 0;

  <bb 20> :
  DmaTransferList = {CLOBBER};
  DmaStatus = {CLOBBER};
  StartTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  ElapsedTicks = {CLOBBER};
  return;

}


Lpuart_Uart_Ip_CompleteSendDataUsingInt (const uint8 Instance)
{
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  struct LPUART_Type * Base;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  ElapsedTicks = 0;
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = UartState->TransmitStatus;
  if (_3 != 2)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  Lpuart_Uart_Ip_SetIntMode (Base, 23, 0);

  <bb 4> :
  Lpuart_Uart_Ip_SetIntMode (Base, 22, 0);
  Lpuart_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, 500000, 0);

  <bb 5> :
  _4 = Lpuart_Uart_Ip_GetStatusFlag (Base, 22);
  _5 = ~_4;
  if (_5 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  TimeoutTicks.19_6 = TimeoutTicks;
  _7 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.19_6, 0);
  _8 = ~_7;
  if (_8 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 7> :
  TimeoutTicks.20_9 = TimeoutTicks;
  _10 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.20_9, 0);
  if (_10 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  UartState->TransmitStatus = 1;

  <bb 9> :
  Lpuart_Uart_Ip_SetTransmitterCmd (Base, 0);
  _11 = UartState->TransmitStatus;
  if (_11 == 2)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  UartState->TransmitStatus = 0;

  <bb 11> :
  UartState->IsTxBusy = 0;
  StartTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  ElapsedTicks = {CLOBBER};
  return;

}


Lpuart_Uart_Ip_StartSendDataUsingDma (const uint8 Instance, const uint8 * TxBuff, const uint32 TxSize)
{
  Dma_Ip_ReturnType DmaReturnStatus;
  struct Dma_Ip_LogicChannelTransferListType DmaTransferList[10];
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6895;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  DmaTransferList[0].Param = 0;
  TxBuff.17_4 = (long unsigned int) TxBuff;
  DmaTransferList[0].Value = TxBuff.17_4;
  DmaTransferList[1].Param = 5;
  _5 = &Base->DATA;
  _6 = (long unsigned int) _5;
  DmaTransferList[1].Value = _6;
  DmaTransferList[2].Param = 1;
  DmaTransferList[2].Value = 1;
  DmaTransferList[3].Param = 6;
  DmaTransferList[3].Value = 0;
  DmaTransferList[4].Param = 18;
  DmaTransferList[4].Value = TxSize;
  DmaTransferList[5].Param = 15;
  DmaTransferList[5].Value = 1;
  DmaTransferList[6].Param = 8;
  DmaTransferList[6].Value = 0;
  DmaTransferList[7].Param = 3;
  DmaTransferList[7].Value = 0;
  DmaTransferList[8].Param = 21;
  DmaTransferList[8].Value = 1;
  DmaTransferList[9].Param = 23;
  DmaTransferList[9].Value = 1;
  UartState->TxBuff = TxBuff;
  UartState->TxSize = 0;
  UartState->TransmitStatus = 2;
  _7 = UartUserCfg->TxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelTransferList (_7, &DmaTransferList, 10);
  _8 = DmaReturnStatus == 0;
  DevAssert (_8);
  _9 = UartUserCfg->TxDMAChannel;
  DmaReturnStatus = Dma_Ip_SetLogicChannelCommand (_9, 0);
  _10 = DmaReturnStatus == 0;
  DevAssert (_10);
  Lpuart_Uart_Ip_SetTransmitterCmd (Base, 1);
  Lpuart_Uart_Ip_SetTxDmaCmd (Base, 1);
  D.6895 = 0;
  DmaTransferList = {CLOBBER};

  <bb 3> :
<L1>:
  return D.6895;

}


Lpuart_Uart_Ip_StartSendDataUsingInt (const uint8 Instance, const uint8 * TxBuff, const uint32 TxSize)
{
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  struct LPUART_Type * Base;
  Lpuart_Uart_Ip_StatusType D.6893;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  UartState->TxBuff = TxBuff;
  UartState->TxSize = TxSize;
  UartState->TransmitStatus = 2;
  Lpuart_Uart_Ip_SetTransmitterCmd (Base, 1);
  Lpuart_Uart_Ip_SetIntMode (Base, 23, 1);
  D.6893 = 0;

  <bb 3> :
<L0>:
  return D.6893;

}


Lpuart_Uart_Ip_ErrIrqHandler (const uint8 Instance)
{
  boolean IsReturn;
  boolean IsError;
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  IsError = 0;
  IsReturn = 0;
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = Lpuart_Uart_Ip_GetStatusFlag (Base, 19);
  if (_4 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 3> :
  Lpuart_Uart_Ip_ClearStatusFlag (Base, 19);
  _5 = Lpuart_Uart_Ip_GetIntMode (Base, 27);
  _6 = ~_5;
  if (_6 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  IsReturn = 1;
  goto <bb 6>; [INV]

  <bb 5> :
  IsError = 1;
  UartState->ReceiveStatus = 5;

  <bb 6> :
  _7 = Lpuart_Uart_Ip_GetStatusFlag (Base, 17);
  if (_7 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 7> :
  _8 = ~IsReturn;
  if (_8 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 8> :
  Lpuart_Uart_Ip_ClearStatusFlag (Base, 17);
  _9 = Lpuart_Uart_Ip_GetIntMode (Base, 25);
  _10 = ~_9;
  if (_10 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  IsReturn = 1;
  goto <bb 11>; [INV]

  <bb 10> :
  IsError = 1;
  UartState->ReceiveStatus = 7;

  <bb 11> :
  _11 = Lpuart_Uart_Ip_GetStatusFlag (Base, 16);
  if (_11 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 12> :
  _12 = ~IsReturn;
  if (_12 != 0)
    goto <bb 13>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 13> :
  Lpuart_Uart_Ip_ClearStatusFlag (Base, 16);
  _13 = Lpuart_Uart_Ip_GetIntMode (Base, 24);
  _14 = ~_13;
  if (_14 != 0)
    goto <bb 14>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 14> :
  IsReturn = 1;
  goto <bb 16>; [INV]

  <bb 15> :
  IsError = 1;
  UartState->ReceiveStatus = 8;

  <bb 16> :
  _15 = Lpuart_Uart_Ip_GetStatusFlag (Base, 18);
  if (_15 != 0)
    goto <bb 17>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 17> :
  _16 = ~IsReturn;
  if (_16 != 0)
    goto <bb 18>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 18> :
  Lpuart_Uart_Ip_ClearStatusFlag (Base, 18);
  _17 = Lpuart_Uart_Ip_GetIntMode (Base, 26);
  _18 = ~_17;
  if (_18 != 0)
    goto <bb 19>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 19> :
  IsReturn = 1;
  goto <bb 21>; [INV]

  <bb 20> :
  IsError = 1;
  UartState->ReceiveStatus = 9;

  <bb 21> :
  _19 = ~IsReturn;
  if (_19 != 0)
    goto <bb 22>; [INV]
  else
    goto <bb 28>; [INV]

  <bb 22> :
  if (IsError != 0)
    goto <bb 23>; [INV]
  else
    goto <bb 28>; [INV]

  <bb 23> :
  _20 = UartUserCfg->TransferType;
  if (_20 == 1)
    goto <bb 24>; [INV]
  else
    goto <bb 25>; [INV]

  <bb 24> :
  Lpuart_Uart_Ip_CompleteReceiveDataUsingInt (Instance);
  goto <bb 26>; [INV]

  <bb 25> :
  _21 = UartUserCfg->RxDMAChannel;
  Dma_Ip_SetLogicChannelCommand (_21, 1);
  Lpuart_Uart_Ip_CompleteReceiveUsingDma (Instance);

  <bb 26> :
  _22 = UartUserCfg->Callback;
  if (_22 != 0B)
    goto <bb 27>; [INV]
  else
    goto <bb 28>; [INV]

  <bb 27> :
  _23 = UartUserCfg->Callback;
  _24 = UartUserCfg->CallbackParam;
  _23 (Instance, 3, _24);

  <bb 28> :
  return;

}


Lpuart_Uart_Ip_TxCompleteIrqHandler (const uint8 Instance)
{
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  const struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  _1 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_1];
  _2 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_2];
  _3 = UartState->TxSize;
  if (_3 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 3> :
  _4 = UartUserCfg->TransferType;
  if (_4 == 1)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  Lpuart_Uart_Ip_CompleteSendDataUsingInt (Instance);

  <bb 5> :
  _5 = UartUserCfg->Callback;
  if (_5 != 0B)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  _6 = UartUserCfg->Callback;
  _7 = UartUserCfg->CallbackParam;
  _6 (Instance, 2, _7);

  <bb 7> :
  return;

}


Lpuart_Uart_Ip_TxEmptyIrqHandler (const uint8 Instance)
{
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  const struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  _1 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_1];
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = UartState->TxSize;
  if (_4 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  Lpuart_Uart_Ip_PutData (Instance);
  _5 = UartState->TxSize;
  if (_5 == 0)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 4> :
  _6 = UartUserCfg->Callback;
  if (_6 != 0B)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _7 = UartUserCfg->Callback;
  _8 = UartUserCfg->CallbackParam;
  _7 (Instance, 1, _8);

  <bb 6> :
  _9 = UartState->TxSize;
  if (_9 == 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  Lpuart_Uart_Ip_SetIntMode (Base, 23, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 22, 1);

  <bb 8> :
  return;

}


Lpuart_Uart_Ip_RxIrqHandler (const uint8 Instance)
{
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  const struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  _1 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_1];
  _2 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_2];
  Lpuart_Uart_Ip_GetData (Instance);
  _3 = UartState->RxSize;
  if (_3 == 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _4 = UartUserCfg->Callback;
  if (_4 != 0B)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _5 = UartUserCfg->Callback;
  _6 = UartUserCfg->CallbackParam;
  _5 (Instance, 0, _6);

  <bb 5> :
  _7 = UartState->RxSize;
  if (_7 == 0)
    goto <bb 6>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 6> :
  Lpuart_Uart_Ip_CompleteReceiveDataUsingInt (Instance);
  _8 = UartUserCfg->Callback;
  if (_8 != 0B)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  _9 = UartUserCfg->Callback;
  _10 = UartUserCfg->CallbackParam;
  _9 (Instance, 2, _10);

  <bb 8> :
  return;

}


Lpuart_Uart_Ip_IrqHandler (const uint8 Instance)
{
  boolean IsReturn;
  const struct Lpuart_Uart_Ip_StateStructureType * UartState;
  struct LPUART_Type * Base;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_2];
  _3 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_3];
  IsReturn = 0;
  if (UartState == 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  Lpuart_Uart_Ip_Getchar (Base);
  Lpuart_Uart_Ip_ClearErrorFlags (Base);
  goto <bb 17>; [INV]

  <bb 4> :
  Lpuart_Uart_Ip_ErrIrqHandler (Instance);
  _4 = Lpuart_Uart_Ip_GetStatusFlag (Base, 21);
  if (_4 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 5> :
  _5 = Lpuart_Uart_Ip_GetIntMode (Base, 21);
  if (_5 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  Lpuart_Uart_Ip_RxIrqHandler (Instance);
  goto <bb 8>; [INV]

  <bb 7> :
  Lpuart_Uart_Ip_Getchar (Base);

  <bb 8> :
  IsReturn = 1;

  <bb 9> :
  _6 = Lpuart_Uart_Ip_GetStatusFlag (Base, 23);
  if (_6 != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 10> :
  _7 = ~IsReturn;
  if (_7 != 0)
    goto <bb 11>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 11> :
  _8 = Lpuart_Uart_Ip_GetIntMode (Base, 23);
  if (_8 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  Lpuart_Uart_Ip_TxEmptyIrqHandler (Instance);
  IsReturn = 1;

  <bb 13> :
  _9 = Lpuart_Uart_Ip_GetStatusFlag (Base, 22);
  if (_9 != 0)
    goto <bb 14>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 14> :
  _10 = ~IsReturn;
  if (_10 != 0)
    goto <bb 15>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 15> :
  _11 = Lpuart_Uart_Ip_GetIntMode (Base, 22);
  if (_11 != 0)
    goto <bb 16>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 16> :
  Lpuart_Uart_Ip_TxCompleteIrqHandler (Instance);

  <bb 17> :
  return;

}


Lpuart_Uart_Ip_SetRxBuffer (const uint8 Instance, uint8 * RxBuff, const uint32 RxSize)
{
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6810;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = RxBuff != 0B;
  DevAssert (_2);
  _3 = RxSize != 0;
  DevAssert (_3);
  _4 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_4];
  UartState->RxBuff = RxBuff;
  UartState->RxSize = RxSize;
  D.6810 = 0;

  <bb 3> :
<L0>:
  return D.6810;

}


Lpuart_Uart_Ip_SetTxBuffer (const uint8 Instance, const uint8 * TxBuff, const uint32 TxSize)
{
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6808;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = TxBuff != 0B;
  DevAssert (_2);
  _3 = TxSize != 0;
  DevAssert (_3);
  _4 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_4];
  UartState->TxBuff = TxBuff;
  UartState->TxSize = TxSize;
  D.6808 = 0;

  <bb 3> :
<L0>:
  return D.6808;

}


Lpuart_Uart_Ip_GetBaudRate (const uint8 Instance, uint32 * ConfiguredBaudRate)
{
  const struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = ConfiguredBaudRate != 0B;
  DevAssert (_2);
  _3 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_3];
  _4 = UartState->BaudRate;
  *ConfiguredBaudRate = _4;
  return;

}


Lpuart_Uart_Ip_SetBaudRate (const uint8 Instance, const Lpuart_Uart_Ip_BaudrateType DesiredBaudrate, const uint32 ClockFrequency)
{
  Lpuart_Uart_Ip_StatusType Status;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  struct LPUART_Type * Base;
  uint32 ExpectedBaud;
  uint32 MaxOsr;
  uint32 BaudDiff;
  uint32 CalculatedBaud;
  uint32 TempDiff;
  uint32 Osr;
  uint16 SbrTemp;
  uint16 Idx;
  uint16 Sbr;
  Lpuart_Uart_Ip_StatusType D.6806;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  ExpectedBaud = DesiredBaudrate;
  _2 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_2];
  _3 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_3];
  Status = 1;
  _4 = UartState != 0B;
  DevAssert (_4);
  _5 = UartState->IsTxBusy;
  if (_5 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 3>; [INV]

  <bb 3> :
  _6 = UartState->IsRxBusy;
  if (_6 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  Status = 2;
  goto <bb 22>; [INV]

  <bb 5> :
  _7 = ClockFrequency != 0;
  DevAssert (_7);
  _8 = ExpectedBaud * 5;
  _9 = ClockFrequency >= _8;
  DevAssert (_9);
  Osr = 4;
  _10 = ExpectedBaud * Osr;
  _11 = ClockFrequency / _10;
  Sbr = (uint16) _11;
  _12 = (long unsigned int) Sbr;
  _13 = Osr * _12;
  CalculatedBaud = ClockFrequency / _13;
  if (CalculatedBaud > ExpectedBaud)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  BaudDiff = CalculatedBaud - ExpectedBaud;
  goto <bb 8>; [INV]

  <bb 7> :
  BaudDiff = ExpectedBaud - CalculatedBaud;

  <bb 8> :
  MaxOsr = ClockFrequency / ExpectedBaud;
  if (MaxOsr > 32)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  MaxOsr = 32;

  <bb 10> :
  if (MaxOsr > 4)
    goto <bb 11>; [INV]
  else
    goto <bb 19>; [INV]

  <bb 11> :
  Idx = 5;
  goto <bb 18>; [INV]

  <bb 12> :
  _14 = (long unsigned int) Idx;
  _15 = ExpectedBaud * _14;
  _16 = ClockFrequency / _15;
  SbrTemp = (uint16) _16;
  _17 = (long unsigned int) Idx;
  _18 = (long unsigned int) SbrTemp;
  _19 = _17 * _18;
  CalculatedBaud = ClockFrequency / _19;
  if (CalculatedBaud > ExpectedBaud)
    goto <bb 13>; [INV]
  else
    goto <bb 14>; [INV]

  <bb 13> :
  TempDiff = CalculatedBaud - ExpectedBaud;
  goto <bb 15>; [INV]

  <bb 14> :
  TempDiff = ExpectedBaud - CalculatedBaud;

  <bb 15> :
  if (TempDiff <= BaudDiff)
    goto <bb 16>; [INV]
  else
    goto <bb 17>; [INV]

  <bb 16> :
  BaudDiff = TempDiff;
  Osr = (uint32) Idx;
  Sbr = SbrTemp;

  <bb 17> :
  Idx.16_20 = Idx;
  Idx = Idx.16_20 + 1;

  <bb 18> :
  _21 = (long unsigned int) Idx;
  if (MaxOsr >= _21)
    goto <bb 12>; [INV]
  else
    goto <bb 19>; [INV]

  <bb 19> :
  if (Osr <= 7)
    goto <bb 20>; [INV]
  else
    goto <bb 21>; [INV]

  <bb 20> :
  Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd (Base);

  <bb 21> :
  _22 = Osr + 4294967295;
  Lpuart_Uart_Ip_SetOversamplingRatio (Base, _22);
  _23 = (long unsigned int) Sbr;
  Lpuart_Uart_Ip_SetBaudRateDivisor (Base, _23);
  UartState->BaudRate = CalculatedBaud;
  Status = 0;

  <bb 22> :
  D.6806 = Status;

  <bb 23> :
<L21>:
  return D.6806;

}


Lpuart_Uart_Ip_AbortReceivingData (const uint8 Instance)
{
  Lpuart_Uart_Ip_StatusType RetVal;
  boolean IsReturn;
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6786;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_2];
  _3 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_3];
  _4 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_4];
  _5 = UartState != 0B;
  DevAssert (_5);
  _6 = UartUserCfg != 0B;
  DevAssert (_6);
  IsReturn = 0;
  RetVal = 1;
  _7 = UartState->IsRxBusy;
  _8 = ~_7;
  if (_8 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  RetVal = 0;
  IsReturn = 1;

  <bb 4> :
  _9 = ~IsReturn;
  if (_9 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 5> :
  UartState->ReceiveStatus = 6;
  _10 = UartUserCfg->TransferType;
  if (_10 == 1)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  Lpuart_Uart_Ip_CompleteReceiveDataUsingInt (Instance);
  goto <bb 8>; [INV]

  <bb 7> :
  _11 = UartUserCfg->RxDMAChannel;
  Dma_Ip_SetLogicChannelCommand (_11, 1);
  Lpuart_Uart_Ip_CompleteReceiveUsingDma (Instance);

  <bb 8> :
  Lpuart_Uart_Ip_ClearErrorFlags (Base);
  Lpuart_Uart_Ip_FlushRxBuffer (Base);
  RetVal = 0;

  <bb 9> :
  D.6786 = RetVal;

  <bb 10> :
<L7>:
  return D.6786;

}


Lpuart_Uart_Ip_GetReceiveStatus (const uint8 Instance, uint32 * BytesRemaining)
{
  const Dma_Ip_LogicChannelInfoParamType DmaLogicChnParam;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  const struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6777;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  DmaLogicChnParam = 3;
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = UartState != 0B;
  DevAssert (_4);
  _5 = UartUserCfg != 0B;
  DevAssert (_5);
  if (BytesRemaining != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  _6 = UartState->IsRxBusy;
  if (_6 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 4> :
  _7 = UartUserCfg->TransferType;
  if (_7 == 1)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _8 = UartState->RxSize;
  *BytesRemaining = _8;
  goto <bb 8>; [INV]

  <bb 6> :
  _9 = UartUserCfg->RxDMAChannel;
  Dma_Ip_GetLogicChannelParam (_9, DmaLogicChnParam, BytesRemaining);
  goto <bb 8>; [INV]

  <bb 7> :
  *BytesRemaining = 0;

  <bb 8> :
  D.6777 = UartState->ReceiveStatus;

  <bb 9> :
<L8>:
  return D.6777;

}


Lpuart_Uart_Ip_AsyncReceive (const uint8 Instance, uint8 * RxBuff, const uint32 RxSize)
{
  boolean IsReturn;
  Lpuart_Uart_Ip_StatusType RetVal;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  Lpuart_Uart_Ip_StatusType D.6767;
  int iftmp.15;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = RxBuff != 0B;
  DevAssert (_2);
  _3 = RxSize != 0;
  DevAssert (_3);
  RetVal = 0;
  _4 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_4];
  _5 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_5];
  IsReturn = 0;
  _6 = UartState != 0B;
  DevAssert (_6);
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_03 ();
  _7 = UartState->IsRxBusy;
  if (_7 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_03 ();
  RetVal = 2;
  IsReturn = 1;

  <bb 4> :
  _8 = ~IsReturn;
  if (_8 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 5> :
  UartState->IsRxBusy = 1;
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_03 ();
  _9 = UartUserCfg != 0B;
  DevAssert (_9);
  _10 = UartUserCfg->TransferType;
  if (_10 == 1)
    goto <bb 7>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 6> :
  _11 = UartUserCfg->TransferType;
  if (_11 == 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  iftmp.15 = 1;
  goto <bb 9>; [INV]

  <bb 8> :
  iftmp.15 = 0;

  <bb 9> :
  _12 = (_Bool) iftmp.15;
  DevAssert (_12);
  _13 = UartUserCfg->TransferType;
  if (_13 == 1)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  RetVal = Lpuart_Uart_Ip_StartReceiveDataUsingInt (Instance, RxBuff, RxSize);
  goto <bb 12>; [INV]

  <bb 11> :
  RetVal = Lpuart_Uart_Ip_StartReceiveDataUsingDma (Instance, RxBuff, RxSize);

  <bb 12> :
  D.6767 = RetVal;

  <bb 13> :
<L11>:
  return D.6767;

}


Lpuart_Uart_Ip_StartGetData (const uint8 Instance, uint32 * StartTime, uint32 * ElapsedTicks, uint32 TimeoutTicks)
{
  const uint32 Lpuart_Uart_Ip_StatusRegMask[4];
  const Lpuart_Uart_Ip_StatusType Lpuart_Uart_Ip_ReceiveStatusArray[4];
  const Lpuart_Uart_Ip_StatusFlagType Lpuart_Uart_Ip_StatusFlagTypeArray[4];
  uint32 Mask;
  uint8 StatusIndex;
  struct LPUART_Type * Base;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;

  <bb 2> :
  _1 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_1];
  _2 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_2];
  StatusIndex = 0;
  Mask = 0;
  Lpuart_Uart_Ip_StatusFlagTypeArray = *.LC0;
  Lpuart_Uart_Ip_ReceiveStatusArray = *.LC1;
  Lpuart_Uart_Ip_StatusRegMask = *.LC2;
  goto <bb 14>; [INV]

  <bb 3> :

  <bb 4> :
  _3 = Lpuart_Uart_Ip_GetStatusFlag (Base, 21);
  _4 = ~_3;
  if (_4 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _5 = Lpuart_Uart_Ip_CheckTimeout (StartTime, ElapsedTicks, TimeoutTicks, 0);
  _6 = ~_5;
  if (_6 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 6> :
  StatusIndex = 0;
  goto <bb 10>; [INV]

  <bb 7> :
  _7 = (int) StatusIndex;
  _8 = Lpuart_Uart_Ip_StatusFlagTypeArray[_7];
  _9 = Lpuart_Uart_Ip_GetStatusFlag (Base, _8);
  if (_9 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  _10 = (int) StatusIndex;
  _11 = Lpuart_Uart_Ip_ReceiveStatusArray[_10];
  UartState->ReceiveStatus = _11;
  _12 = (int) StatusIndex;
  _13 = Lpuart_Uart_Ip_StatusRegMask[_12];
  Mask = Mask | _13;

  <bb 9> :
  StatusIndex.14_14 = StatusIndex;
  StatusIndex = StatusIndex.14_14 + 1;

  <bb 10> :
  if (StatusIndex <= 3)
    goto <bb 7>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 11> :
  if (Mask != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  Lpuart_Uart_Ip_SetReceiverCmd (Base, 0);
  Lpuart_Uart_Ip_ClearStatusFlagWithMask (Base, Mask);
  goto <bb 16>; [INV]

  <bb 13> :
  Lpuart_Uart_Ip_GetData (Instance);

  <bb 14> :
  _15 = UartState->RxSize;
  if (_15 != 0)
    goto <bb 15>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 15> :
  _16 = Lpuart_Uart_Ip_CheckTimeout (StartTime, ElapsedTicks, TimeoutTicks, 0);
  _17 = ~_16;
  if (_17 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 16>; [INV]

  <bb 16> :
  Lpuart_Uart_Ip_StatusFlagTypeArray = {CLOBBER};
  Lpuart_Uart_Ip_ReceiveStatusArray = {CLOBBER};
  Lpuart_Uart_Ip_StatusRegMask = {CLOBBER};
  return;

}


Lpuart_Uart_Ip_SyncReceive (const uint8 Instance, uint8 * RxBuff, const uint32 RxSize, const uint32 Timeout)
{
  Lpuart_Uart_Ip_StatusType RetVal;
  boolean IsReturn;
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  struct LPUART_Type * Base;
  Lpuart_Uart_Ip_StatusType D.6737;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = RxBuff != 0B;
  DevAssert (_2);
  _3 = RxSize != 0;
  DevAssert (_3);
  _4 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_4];
  ElapsedTicks = 0;
  IsReturn = 0;
  RetVal = 0;
  _5 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_5];
  _6 = UartState != 0B;
  DevAssert (_6);
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_02 ();
  _7 = UartState->IsRxBusy;
  if (_7 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_02 ();
  RetVal = 2;
  IsReturn = 1;

  <bb 4> :
  _8 = ~IsReturn;
  if (_8 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 5> :
  UartState->IsRxBusy = 1;
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_02 ();
  UartState->RxBuff = RxBuff;
  UartState->RxSize = RxSize;
  UartState->ReceiveStatus = 2;
  Lpuart_Uart_Ip_SetIntMode (Base, 21, 0);
  Lpuart_Uart_Ip_SetReceiverCmd (Base, 1);
  Lpuart_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, Timeout, 0);
  TimeoutTicks.11_9 = TimeoutTicks;
  Lpuart_Uart_Ip_StartGetData (Instance, &StartTime, &ElapsedTicks, TimeoutTicks.11_9);
  TimeoutTicks.12_10 = TimeoutTicks;
  _11 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.12_10, 0);
  if (_11 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  UartState->ReceiveStatus = 3;

  <bb 7> :
  _12 = UartState->ReceiveStatus;
  if (_12 == 2)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  UartState->ReceiveStatus = 0;

  <bb 9> :
  _13 = UartState->RxSize;
  if (_13 == 0)
    goto <bb 10>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 10> :
  _14 = UartState->ReceiveStatus;
  if (_14 == 5)
    goto <bb 11>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 11> :
  UartState->ReceiveStatus = 0;

  <bb 12> :
  Lpuart_Uart_Ip_SetReceiverCmd (Base, 0);
  UartState->IsRxBusy = 0;
  Lpuart_Uart_Ip_Getchar (Base);
  RetVal = UartState->ReceiveStatus;

  <bb 13> :
  D.6737 = RetVal;
  StartTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  ElapsedTicks = {CLOBBER};

  <bb 14> :
<L13>:
  return D.6737;

}


Lpuart_Uart_Ip_AbortSendingData (const uint8 Instance)
{
  Lpuart_Uart_Ip_StatusType RetVal;
  boolean IsReturn;
  struct LPUART_Type * Base;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6723;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_2];
  IsReturn = 0;
  RetVal = 0;
  _3 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_3];
  _4 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_4];
  _5 = UartState != 0B;
  DevAssert (_5);
  _6 = UartUserCfg != 0B;
  DevAssert (_6);
  _7 = UartState->IsTxBusy;
  _8 = ~_7;
  if (_8 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  RetVal = 0;
  IsReturn = 1;

  <bb 4> :
  _9 = ~IsReturn;
  if (_9 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 5> :
  UartState->TransmitStatus = 6;
  _10 = UartUserCfg->TransferType;
  if (_10 == 1)
    goto <bb 6>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 6> :
  Lpuart_Uart_Ip_CompleteSendDataUsingInt (Instance);
  goto <bb 8>; [INV]

  <bb 7> :
  _11 = UartUserCfg->TxDMAChannel;
  Dma_Ip_SetLogicChannelCommand (_11, 1);
  Lpuart_Uart_Ip_CompleteSendUsingDma (Instance);

  <bb 8> :
  Lpuart_Uart_Ip_FlushTxBuffer (Base);
  RetVal = 0;

  <bb 9> :
  D.6723 = RetVal;

  <bb 10> :
<L7>:
  return D.6723;

}


Lpuart_Uart_Ip_GetTransmitStatus (const uint8 Instance, uint32 * BytesRemaining)
{
  const Dma_Ip_LogicChannelInfoParamType DmaLogicChnParam;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  const struct Lpuart_Uart_Ip_StateStructureType * UartState;
  Lpuart_Uart_Ip_StatusType D.6714;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  DmaLogicChnParam = 3;
  _2 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_2];
  _3 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_3];
  _4 = UartState != 0B;
  DevAssert (_4);
  _5 = UartUserCfg != 0B;
  DevAssert (_5);
  if (BytesRemaining != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 3> :
  _6 = UartState->IsTxBusy;
  if (_6 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 4> :
  _7 = UartUserCfg->TransferType;
  if (_7 == 1)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _8 = UartState->TxSize;
  *BytesRemaining = _8;
  goto <bb 8>; [INV]

  <bb 6> :
  _9 = UartUserCfg->TxDMAChannel;
  Dma_Ip_GetLogicChannelParam (_9, DmaLogicChnParam, BytesRemaining);
  goto <bb 8>; [INV]

  <bb 7> :
  *BytesRemaining = 0;

  <bb 8> :
  D.6714 = UartState->TransmitStatus;

  <bb 9> :
<L8>:
  return D.6714;

}


Lpuart_Uart_Ip_AsyncSend (const uint8 Instance, const uint8 * TxBuff, const uint32 TxSize)
{
  boolean IsReturn;
  Lpuart_Uart_Ip_StatusType RetVal;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  const struct Lpuart_Uart_Ip_UserConfigType * UartUserCfg;
  Lpuart_Uart_Ip_StatusType D.6704;
  int iftmp.10;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = TxBuff != 0B;
  DevAssert (_2);
  _3 = TxSize != 0;
  DevAssert (_3);
  RetVal = 0;
  _4 = (int) Instance;
  UartUserCfg = Lpuart_Uart_Ip_apUserConfig[_4];
  _5 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_5];
  IsReturn = 0;
  _6 = UartState != 0B;
  DevAssert (_6);
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_01 ();
  _7 = UartState->IsTxBusy;
  if (_7 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_01 ();
  RetVal = 2;
  IsReturn = 1;

  <bb 4> :
  _8 = ~IsReturn;
  if (_8 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 5> :
  UartState->IsTxBusy = 1;
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_01 ();
  _9 = UartUserCfg != 0B;
  DevAssert (_9);
  _10 = UartUserCfg->TransferType;
  if (_10 == 1)
    goto <bb 7>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 6> :
  _11 = UartUserCfg->TransferType;
  if (_11 == 0)
    goto <bb 7>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 7> :
  iftmp.10 = 1;
  goto <bb 9>; [INV]

  <bb 8> :
  iftmp.10 = 0;

  <bb 9> :
  _12 = (_Bool) iftmp.10;
  DevAssert (_12);
  _13 = UartUserCfg->TransferType;
  if (_13 == 1)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  RetVal = Lpuart_Uart_Ip_StartSendDataUsingInt (Instance, TxBuff, TxSize);
  goto <bb 12>; [INV]

  <bb 11> :
  RetVal = Lpuart_Uart_Ip_StartSendDataUsingDma (Instance, TxBuff, TxSize);

  <bb 12> :
  D.6704 = RetVal;

  <bb 13> :
<L11>:
  return D.6704;

}


Lpuart_Uart_Ip_SyncSend (const uint8 Instance, const uint8 * TxBuff, const uint32 TxSize, const uint32 Timeout)
{
  Lpuart_Uart_Ip_StatusType RetVal;
  boolean IsReturn;
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;
  struct Lpuart_Uart_Ip_StateStructureType * UartState;
  struct LPUART_Type * Base;
  Lpuart_Uart_Ip_StatusType D.6685;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = TxBuff != 0B;
  DevAssert (_2);
  _3 = TxSize != 0;
  DevAssert (_3);
  ElapsedTicks = 0;
  IsReturn = 0;
  RetVal = 0;
  _4 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_4];
  _5 = (int) Instance;
  UartState = Lpuart_Uart_Ip_apStateStructuresArray[_5];
  _6 = UartState != 0B;
  DevAssert (_6);
  SchM_Enter_Uart_UART_EXCLUSIVE_AREA_00 ();
  _7 = UartState->IsTxBusy;
  if (_7 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_00 ();
  RetVal = 2;
  IsReturn = 1;

  <bb 4> :
  _8 = ~IsReturn;
  if (_8 != 0)
    goto <bb 5>; [INV]
  else
    goto <bb 15>; [INV]

  <bb 5> :
  UartState->IsTxBusy = 1;
  SchM_Exit_Uart_UART_EXCLUSIVE_AREA_00 ();
  UartState->TxBuff = TxBuff;
  UartState->TxSize = TxSize;
  UartState->TransmitStatus = 2;
  Lpuart_Uart_Ip_SetIntMode (Base, 23, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 22, 0);
  Lpuart_Uart_Ip_SetTransmitterCmd (Base, 1);
  Lpuart_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, Timeout, 0);
  goto <bb 9>; [INV]

  <bb 6> :
  Lpuart_Uart_Ip_PutData (Instance);

  <bb 7> :
  _9 = Lpuart_Uart_Ip_GetStatusFlag (Base, 23);
  _10 = ~_9;
  if (_10 != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  TimeoutTicks.6_11 = TimeoutTicks;
  _12 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.6_11, 0);
  _13 = ~_12;
  if (_13 != 0)
    goto <bb 7>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 9> :
  _14 = UartState->TxSize;
  if (_14 != 0)
    goto <bb 10>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 10> :
  TimeoutTicks.7_15 = TimeoutTicks;
  _16 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.7_15, 0);
  _17 = ~_16;
  if (_17 != 0)
    goto <bb 6>; [INV]
  else
    goto <bb 11>; [INV]

  <bb 11> :
  Lpuart_Uart_Ip_SetTransmitterCmd (Base, 0);
  TimeoutTicks.8_18 = TimeoutTicks;
  _19 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.8_18, 0);
  if (_19 != 0)
    goto <bb 12>; [INV]
  else
    goto <bb 13>; [INV]

  <bb 12> :
  UartState->TransmitStatus = 3;
  goto <bb 14>; [INV]

  <bb 13> :
  UartState->TransmitStatus = 0;

  <bb 14> :
  UartState->IsTxBusy = 0;
  RetVal = UartState->TransmitStatus;

  <bb 15> :
  D.6685 = RetVal;
  StartTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  ElapsedTicks = {CLOBBER};

  <bb 16> :
<L16>:
  return D.6685;

}


Lpuart_Uart_Ip_Deinit (const uint8 Instance)
{
  struct LPUART_Type * Base;
  uint32 ElapsedTicks;
  uint32 TimeoutTicks;
  uint32 StartTime;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  ElapsedTicks = 0;
  _2 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_2];
  _3 = (int) Instance;
  _4 = Lpuart_Uart_Ip_apStateStructuresArray[_3];
  _5 = _4 != 0B;
  DevAssert (_5);
  Lpuart_Uart_Ip_StartTimeout (&StartTime, &TimeoutTicks, 500000, 0);

  <bb 3> :
  _6 = Lpuart_Uart_Ip_GetStatusFlag (Base, 22);
  _7 = ~_6;
  if (_7 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  TimeoutTicks.4_8 = TimeoutTicks;
  _9 = Lpuart_Uart_Ip_CheckTimeout (&StartTime, &ElapsedTicks, TimeoutTicks.4_8, 0);
  _10 = ~_9;
  if (_10 != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 5> :
  Lpuart_Uart_Ip_SetIntMode (Base, 23, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 22, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 21, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 27, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 24, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 26, 0);
  Lpuart_Uart_Ip_SetIntMode (Base, 25, 0);
  _11 = (int) Instance;
  Lpuart_Uart_Ip_apStateStructuresArray[_11] = 0B;
  StartTime = {CLOBBER};
  TimeoutTicks = {CLOBBER};
  ElapsedTicks = {CLOBBER};
  return;

}


Lpuart_Uart_Ip_Init (const uint8 Instance, const struct Lpuart_Uart_Ip_UserConfigType * UserConfig)
{
  uint8 * ClearStructPtr;
  uint32 Index;
  struct Lpuart_Uart_Ip_StateStructureType * UartStatePtr;
  struct LPUART_Type * Base;
  int iftmp.2;
  int iftmp.1;
  int iftmp.0;

  <bb 2> :
  _1 = Instance <= 2;
  DevAssert (_1);
  _2 = UserConfig != 0B;
  DevAssert (_2);
  _3 = (int) Instance;
  _4 = Lpuart_Uart_Ip_apStateStructuresArray[_3];
  _5 = _4 == 0B;
  DevAssert (_5);
  _6 = UserConfig->BaudOverSamplingRatio;
  _7 = _6 <= 32;
  DevAssert (_7);
  _8 = UserConfig->BaudRateDivisor;
  if (_8 <= 8191)
    goto <bb 3>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 3> :
  _9 = UserConfig->BaudRateDivisor;
  if (_9 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  iftmp.0 = 1;
  goto <bb 6>; [INV]

  <bb 5> :
  iftmp.0 = 0;

  <bb 6> :
  _10 = (_Bool) iftmp.0;
  DevAssert (_10);
  _11 = (int) Instance;
  Base = Lpuart_Uart_Ip_apBases[_11];
  _12 = (int) Instance;
  _13 = UserConfig->StateStruct;
  Lpuart_Uart_Ip_apStateStructuresArray[_12] = _13;
  _14 = (int) Instance;
  UartStatePtr = Lpuart_Uart_Ip_apStateStructuresArray[_14];
  _15 = (int) Instance;
  Lpuart_Uart_Ip_apUserConfig[_15] = UserConfig;
  ClearStructPtr = UartStatePtr;
  _16 = UserConfig->TransferType;
  if (_16 != 0)
    goto <bb 9>; [INV]
  else
    goto <bb 7>; [INV]

  <bb 7> :
  _17 = UserConfig->BitCountPerChar;
  if (_17 == 0)
    goto <bb 9>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 8> :
  _18 = UserConfig->BitCountPerChar;
  if (_18 == 1)
    goto <bb 9>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 9> :
  iftmp.1 = 1;
  goto <bb 11>; [INV]

  <bb 10> :
  iftmp.1 = 0;

  <bb 11> :
  _19 = (_Bool) iftmp.1;
  DevAssert (_19);
  _20 = UserConfig->BitCountPerChar;
  if (_20 != 3)
    goto <bb 13>; [INV]
  else
    goto <bb 12>; [INV]

  <bb 12> :
  _21 = UserConfig->ParityMode;
  if (_21 == 0)
    goto <bb 13>; [INV]
  else
    goto <bb 14>; [INV]

  <bb 13> :
  iftmp.2 = 1;
  goto <bb 15>; [INV]

  <bb 14> :
  iftmp.2 = 0;

  <bb 15> :
  _22 = (_Bool) iftmp.2;
  DevAssert (_22);
  Index = 0;
  goto <bb 17>; [INV]

  <bb 16> :
  _23 = ClearStructPtr + Index;
  *_23 = 0;
  Index = Index + 1;

  <bb 17> :
  if (Index <= 31)
    goto <bb 16>; [INV]
  else
    goto <bb 18>; [INV]

  <bb 18> :
  Lpuart_Uart_Ip_Hw_Init (Base);
  _24 = UserConfig->BaudOverSamplingRatio;
  if (_24 <= 7)
    goto <bb 19>; [INV]
  else
    goto <bb 20>; [INV]

  <bb 19> :
  Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd (Base);

  <bb 20> :
  _25 = UserConfig->BaudOverSamplingRatio;
  _26 = (long unsigned int) _25;
  _27 = _26 + 4294967295;
  Lpuart_Uart_Ip_SetOversamplingRatio (Base, _27);
  _28 = UserConfig->BaudRateDivisor;
  Lpuart_Uart_Ip_SetBaudRateDivisor (Base, _28);
  _29 = UserConfig->ParityMode;
  if (_29 != 0)
    goto <bb 21>; [INV]
  else
    goto <bb 22>; [INV]

  <bb 21> :
  _30 = UserConfig->BitCountPerChar;
  Lpuart_Uart_Ip_SetBitCountPerChar (Base, _30, 1);
  goto <bb 23>; [INV]

  <bb 22> :
  _31 = UserConfig->BitCountPerChar;
  Lpuart_Uart_Ip_SetBitCountPerChar (Base, _31, 0);

  <bb 23> :
  _32 = UserConfig->ParityMode;
  Lpuart_Uart_Ip_SetParityMode (Base, _32);
  _33 = UserConfig->StopBitsCount;
  Lpuart_Uart_Ip_SetStopBitCount (Base, _33);
  UartStatePtr->TransmitStatus = 0;
  UartStatePtr->ReceiveStatus = 0;
  _34 = UserConfig->BaudRate;
  UartStatePtr->BaudRate = _34;
  return;

}


DevAssert (volatile boolean x)
{
  <bb 2> :
  x.3_1 = x;
  if (x.3_1 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 3>; [INV]

  <bb 3> :
  goto <bb 3>; [INV]

  <bb 4> :
  return;

}


Lpuart_Uart_Ip_FlushRxBuffer (struct LPUART_Type * Base)
{
  <bb 2> :
  _1 = Base->FIFO;
  _2 = _1 | 16384;
  Base->FIFO = _2;
  return;

}


Lpuart_Uart_Ip_FlushTxBuffer (struct LPUART_Type * Base)
{
  <bb 2> :
  _1 = Base->FIFO;
  _2 = _1 | 32768;
  Base->FIFO = _2;
  return;

}


Lpuart_Uart_Ip_CheckTimeout (uint32 * StartTime, uint32 * ElapsedTicks, uint32 TimeoutTicks, OsIf_CounterType OsifCounter)
{
  uint32 CurrentElapsedTicks;
  boolean D.6670;

  <bb 2> :
  CurrentElapsedTicks = OsIf_GetElapsed (StartTime, OsifCounter);
  _1 = *ElapsedTicks;
  _2 = CurrentElapsedTicks + _1;
  *ElapsedTicks = _2;
  _3 = *ElapsedTicks;
  D.6670 = TimeoutTicks <= _3;

  <bb 3> :
<L0>:
  return D.6670;

}


Lpuart_Uart_Ip_StartTimeout (uint32 * StartTimeOut, uint32 * TimeoutTicksOut, uint32 TimeoutUs, OsIf_CounterType OsifCounter)
{
  <bb 2> :
  _1 = OsIf_GetCounter (OsifCounter);
  *StartTimeOut = _1;
  _2 = OsIf_MicrosToTicks (TimeoutUs, OsifCounter);
  *TimeoutTicksOut = _2;
  return;

}


Lpuart_Uart_Ip_ClearErrorFlags (struct LPUART_Type * Base)
{
  uint32 Mask;

  <bb 2> :
  Mask = 983040;
  _1 = Base->STAT;
  _2 = _1 & 1071661055;
  _3 = Mask | _2;
  Base->STAT = _3;
  return;

}


Lpuart_Uart_Ip_ClearStatusFlagWithMask (struct LPUART_Type * Base, uint32 Mask)
{
  <bb 2> :
  _1 = Base->STAT;
  _2 = _1 & 1071661055;
  _3 = Mask | _2;
  Base->STAT = _3;
  return;

}


Lpuart_Uart_Ip_ClearStatusFlag (struct LPUART_Type * Base, Lpuart_Uart_Ip_StatusFlagType StatusFlag)
{
  <bb 2> :
  switch (StatusFlag) <default: <L4> [INV], case 16: <L3> [INV], case 17: <L2> [INV], case 18: <L1> [INV], case 19: <L0> [INV]>

  <bb 3> :
<L0>:
  _1 = Base->STAT;
  _2 = _1 & 1071661055;
  _3 = _2 | 524288;
  Base->STAT = _3;
  goto <bb 8>; [INV]

  <bb 4> :
<L1>:
  _4 = Base->STAT;
  _5 = _4 & 1071661055;
  _6 = _5 | 262144;
  Base->STAT = _6;
  goto <bb 8>; [INV]

  <bb 5> :
<L2>:
  _7 = Base->STAT;
  _8 = _7 & 1071661055;
  _9 = _8 | 131072;
  Base->STAT = _9;
  goto <bb 8>; [INV]

  <bb 6> :
<L3>:
  _10 = Base->STAT;
  _11 = _10 & 1071661055;
  _12 = _11 | 65536;
  Base->STAT = _12;
  goto <bb 8>; [INV]

  <bb 7> :
<L4>:

  <bb 8> :
  return;

}


Lpuart_Uart_Ip_GetStatusFlag (const struct LPUART_Type * Base, Lpuart_Uart_Ip_StatusFlagType StatusFlag)
{
  boolean RetVal;
  boolean D.6668;

  <bb 2> :
  RetVal = 0;
  _1 = Base->STAT;
  _2 = _1 >> StatusFlag;
  _3 = _2 & 1;
  RetVal = _3 != 0;
  D.6668 = RetVal;

  <bb 3> :
<L0>:
  return D.6668;

}


Lpuart_Uart_Ip_Getchar10 (const struct LPUART_Type * Base)
{
  uint16 ReadData;
  uint16 D.6992;
  unsigned char D.6991;
  short unsigned int D.6990;

  <bb 2> :
  _1 = Base->CTRL;
  _2 = _1 >> 30;
  _3 = (short unsigned int) _2;
  _4 = _3 << 9;
  ReadData = _4 & 512;
  _5 = Base->CTRL;
  _6 = _5 >> 31;
  _7 = (short unsigned int) _6;
  _8 = _7 << 8;
  D.6990 = _8 & 256;
  ReadData = D.6990 | ReadData;
  _9 = Base->DATA;
  D.6991 = (unsigned char) _9;
  _10 = (short unsigned int) D.6991;
  ReadData = ReadData | _10;
  D.6992 = ReadData;

  <bb 3> :
<L0>:
  return D.6992;

}


Lpuart_Uart_Ip_Getchar9 (const struct LPUART_Type * Base)
{
  uint16 ReadData;
  uint16 D.6988;
  unsigned char D.6987;

  <bb 2> :
  _1 = Base->CTRL;
  _2 = _1 >> 31;
  _3 = (short unsigned int) _2;
  _4 = _3 << 8;
  ReadData = _4 & 256;
  _5 = Base->DATA;
  D.6987 = (unsigned char) _5;
  _6 = (short unsigned int) D.6987;
  ReadData = ReadData | _6;
  D.6988 = ReadData;

  <bb 3> :
<L0>:
  return D.6988;

}


Lpuart_Uart_Ip_Getchar (const struct LPUART_Type * Base)
{
  uint8 D.6744;

  <bb 2> :
  _1 = Base->DATA;
  D.6744 = (uint8) _1;

  <bb 3> :
<L0>:
  return D.6744;

}


Lpuart_Uart_Ip_Putchar10 (struct LPUART_Type * Base, uint16 Data)
{
  volatile uint8 * DataRegBytes;
  uint32 CtrlRegVal;
  uint8 TenthDataBit;
  uint8 NinthDataBit;

  <bb 2> :
  DataRegBytes = &Base->DATA;
  _1 = Data >> 8;
  _2 = (unsigned char) _1;
  NinthDataBit = _2 & 1;
  _3 = Data >> 9;
  _4 = (unsigned char) _3;
  TenthDataBit = _4 & 1;
  CtrlRegVal = Base->CTRL;
  _5 = CtrlRegVal & 3221225471;
  _6 = (long unsigned int) NinthDataBit;
  _7 = _6 << 30;
  CtrlRegVal = _5 | _7;
  _8 = CtrlRegVal & 2147483647;
  _9 = (long unsigned int) TenthDataBit;
  _10 = _9 << 31;
  CtrlRegVal = _8 | _10;
  Base->CTRL = CtrlRegVal;
  _11 = (unsigned char) Data;
  *DataRegBytes = _11;
  return;

}


Lpuart_Uart_Ip_Putchar9 (struct LPUART_Type * Base, uint16 Data)
{
  volatile uint8 * DataRegBytes;
  uint8 NinthDataBit;

  <bb 2> :
  DataRegBytes = &Base->DATA;
  _1 = Data >> 8;
  _2 = (unsigned char) _1;
  NinthDataBit = _2 & 1;
  _3 = Base->CTRL;
  _4 = _3 & 3221225471;
  _5 = (long unsigned int) NinthDataBit;
  _6 = _5 << 30;
  _7 = _4 | _6;
  Base->CTRL = _7;
  _8 = (unsigned char) Data;
  *DataRegBytes = _8;
  return;

}


Lpuart_Uart_Ip_Putchar (struct LPUART_Type * Base, uint8 Data)
{
  volatile uint8 * DataRegBytes;

  <bb 2> :
  DataRegBytes = &Base->DATA;
  *DataRegBytes = Data;
  return;

}


Lpuart_Uart_Ip_SetRxDmaCmd (struct LPUART_Type * Base, boolean Enable)
{
  long unsigned int iftmp.28;

  <bb 2> :
  _1 = Base->BAUD;
  _2 = _1 & 4292870143;
  if (Enable != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.28 = 2097152;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.28 = 0;

  <bb 5> :
  _3 = iftmp.28 | _2;
  Base->BAUD = _3;
  return;

}


Lpuart_Uart_Ip_SetTxDmaCmd (struct LPUART_Type * Base, boolean Enable)
{
  long unsigned int iftmp.18;

  <bb 2> :
  _1 = Base->BAUD;
  _2 = _1 & 4286578687;
  if (Enable != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.18 = 8388608;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.18 = 0;

  <bb 5> :
  _3 = iftmp.18 | _2;
  Base->BAUD = _3;
  return;

}


Lpuart_Uart_Ip_GetIntMode (const struct LPUART_Type * Base, Lpuart_Uart_Ip_InterruptType IntSrc)
{
  boolean RetVal;
  boolean D.6834;

  <bb 2> :
  RetVal = 0;
  _1 = Base->CTRL;
  _2 = _1 >> IntSrc;
  _3 = _2 & 1;
  RetVal = _3 != 0;
  D.6834 = RetVal;

  <bb 3> :
<L0>:
  return D.6834;

}


Lpuart_Uart_Ip_SetIntMode (struct LPUART_Type * Base, Lpuart_Uart_Ip_InterruptType IntSrc, boolean Enable)
{
  unsigned int iftmp.5;

  <bb 2> :
  _1 = Base->CTRL;
  _2 = 1 << IntSrc;
  _3 = ~_2;
  _4 = _1 & _3;
  if (Enable != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.5 = 1;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.5 = 0;

  <bb 5> :
  _5 = iftmp.5 << IntSrc;
  _6 = _4 | _5;
  Base->CTRL = _6;
  return;

}


Lpuart_Uart_Ip_SetStopBitCount (struct LPUART_Type * Base, Lpuart_Uart_Ip_StopBitCountType StopBitCount)
{
  <bb 2> :
  _1 = Base->BAUD;
  _2 = _1 & 4294959103;
  _3 = StopBitCount << 13;
  _4 = _2 | _3;
  Base->BAUD = _4;
  return;

}


Lpuart_Uart_Ip_SetParityMode (struct LPUART_Type * Base, Lpuart_Uart_Ip_ParityModeType ParityModeType)
{
  <bb 2> :
  _1 = Base->CTRL;
  _2 = _1 & 4294967293;
  _3 = ParityModeType & 4294967294;
  _4 = _2 | _3;
  Base->CTRL = _4;
  _5 = Base->CTRL;
  _6 = _5 & 4294967294;
  _7 = ParityModeType & 1;
  _8 = _6 | _7;
  Base->CTRL = _8;
  return;

}


Lpuart_Uart_Ip_SetBitCountPerChar (struct LPUART_Type * Base, Lpuart_Uart_Ip_BitCountPerCharType BitCountPerChar, boolean Parity)
{
  uint32 TmpBitCountPerChar;

  <bb 2> :
  TmpBitCountPerChar = BitCountPerChar;
  if (Parity != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  TmpBitCountPerChar = TmpBitCountPerChar + 1;

  <bb 4> :
  if (TmpBitCountPerChar == 3)
    goto <bb 5>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 5> :
  _1 = Base->BAUD;
  _2 = _1 | 536870912;
  Base->BAUD = _2;
  goto <bb 12>; [INV]

  <bb 6> :
  if (BitCountPerChar == 0)
    goto <bb 7>; [INV]
  else
    goto <bb 10>; [INV]

  <bb 7> :
  if (Parity != 0)
    goto <bb 8>; [INV]
  else
    goto <bb 9>; [INV]

  <bb 8> :
  _3 = Base->CTRL;
  _4 = _3 & 4294965231;
  Base->CTRL = _4;
  goto <bb 11>; [INV]

  <bb 9> :
  _5 = Base->CTRL;
  _6 = _5 | 2048;
  Base->CTRL = _6;
  goto <bb 11>; [INV]

  <bb 10> :
  TmpBitCountPerChar = TmpBitCountPerChar + 4294967295;
  _7 = Base->CTRL;
  _8 = _7 & 4294967279;
  _9 = TmpBitCountPerChar << 4;
  _10 = _8 | _9;
  Base->CTRL = _10;

  <bb 11> :
  _11 = Base->BAUD;
  _12 = _11 & 3758096383;
  Base->BAUD = _12;

  <bb 12> :
  return;

}


Lpuart_Uart_Ip_EnableBothEdgeSamplingCmd (struct LPUART_Type * Base)
{
  <bb 2> :
  _1 = Base->BAUD;
  _2 = _1 | 131072;
  Base->BAUD = _2;
  return;

}


Lpuart_Uart_Ip_SetOversamplingRatio (struct LPUART_Type * Base, uint32 OverSamplingRatio)
{
  <bb 2> :
  _1 = Base->BAUD;
  _2 = _1 & 3774873599;
  _3 = OverSamplingRatio << 24;
  _4 = _3 & 520093696;
  _5 = _2 | _4;
  Base->BAUD = _5;
  return;

}


Lpuart_Uart_Ip_SetBaudRateDivisor (struct LPUART_Type * Base, uint32 baudRateDivisor)
{
  <bb 2> :
  _1 = Base->BAUD;
  _2 = _1 & 4294959104;
  _3 = baudRateDivisor & 8191;
  _4 = _2 | _3;
  Base->BAUD = _4;
  return;

}


Lpuart_Uart_Ip_SetReceiverCmd (struct LPUART_Type * Base, boolean Enable)
{
  long unsigned int iftmp.13;

  <bb 2> :
  _1 = Base->CTRL;
  _2 = _1 & 4294705151;
  if (Enable != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.13 = 262144;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.13 = 0;

  <bb 5> :
  _3 = iftmp.13 | _2;
  Base->CTRL = _3;
  return;

}


Lpuart_Uart_Ip_SetTransmitterCmd (struct LPUART_Type * Base, boolean Enable)
{
  long unsigned int iftmp.9;

  <bb 2> :
  _1 = Base->CTRL;
  _2 = _1 & 4294443007;
  if (Enable != 0)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  iftmp.9 = 524288;
  goto <bb 5>; [INV]

  <bb 4> :
  iftmp.9 = 0;

  <bb 5> :
  _3 = iftmp.9 | _2;
  Base->CTRL = _3;
  return;

}


Lpuart_Uart_Ip_Hw_Init (struct LPUART_Type * Base)
{
  <bb 2> :
  Base->BAUD = 251658244;
  Base->STAT = 3223306240;
  Base->CTRL = 0;
  return;

}


