Histogram: 13 indirect calls trained. 0 (0.00%) have common target. 0 (0.00%) targets was not found. 0 (0.00%) targets had parameter count mismatch. 0 (0.00%) targets was not in polymorphic call target list. 0 (0.00%) speculations seems useless. 0 (0.00%) speculations produced. Lpi2c_Ip_SetMasterHighSpeedMode (uint32 u32Instance, boolean bHighSpeedEnabled) { struct Lpi2c_Ip_MasterStateType * master; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT master_4 = g_lpi2cMasterStatePtr[u32Instance_3(D)]; # DEBUG master => master_4 # DEBUG BEGIN_STMT if (bHighSpeedEnabled_5(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT master_4->operatingMode = 3; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT master_4->operatingMode = 0; [local count: 1073741824]: return; } Lpi2c_Ip_SetSlaveCallback (uint32 u32Instance, void (*Lpi2c_Ip_SlaveCallbackType) (Lpi2c_Ip_SlaveEventType, uint8) slaveCallback) { struct Lpi2c_Ip_SlaveStateType * slave; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT slave_3 = g_lpi2cSlaveStatePtr[u32Instance_2(D)]; # DEBUG slave => slave_3 # DEBUG BEGIN_STMT slave_3->slaveCallback = slaveCallback_4(D); return; } Lpi2c_Ip_SetMasterCallback (uint32 u32Instance, void (*Lpi2c_Ip_MasterCallbackType) (Lpi2c_Ip_MasterEventType, uint8) masterCallback) { struct Lpi2c_Ip_MasterStateType * master; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT master_3 = g_lpi2cMasterStatePtr[u32Instance_2(D)]; # DEBUG master => master_3 # DEBUG BEGIN_STMT master_3->masterCallback = masterCallback_4(D); return; } Lpi2c_Ip_ModuleIRQHandler (uint32 instance) { uint32 u32SlaveIsrStatus; uint32 u32SlaveIsrEnable; uint32 u32MasterIsrStatus; uint32 u32MasterIsrEnable; struct LPI2C_Type * baseAddr; struct Lpi2c_Ip_SlaveStateType * _1; struct Lpi2c_Ip_MasterStateType * _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; [local count: 1073741823]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG u32MasterIsrEnable => 0 # DEBUG BEGIN_STMT # DEBUG u32MasterIsrStatus => 0 # DEBUG BEGIN_STMT # DEBUG u32SlaveIsrEnable => 0 # DEBUG BEGIN_STMT # DEBUG u32SlaveIsrStatus => 0 # DEBUG BEGIN_STMT baseAddr_14 = g_lpi2cBase[instance_13(D)]; # DEBUG baseAddr => baseAddr_14 # DEBUG BEGIN_STMT _1 = g_lpi2cSlaveStatePtr[instance_13(D)]; if (_1 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 322122547]: _2 = g_lpi2cMasterStatePtr[instance_13(D)]; if (_2 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 977105059]: # DEBUG BEGIN_STMT _3 ={v} baseAddr_14->MIER; u32MasterIsrEnable_17 = _3 & 32515; # DEBUG u32MasterIsrEnable => u32MasterIsrEnable_17 # DEBUG BEGIN_STMT _4 ={v} baseAddr_14->MSR; u32MasterIsrStatus_18 = _4 & 32515; # DEBUG u32MasterIsrStatus => u32MasterIsrStatus_18 # DEBUG BEGIN_STMT _5 ={v} baseAddr_14->SIER; u32SlaveIsrEnable_19 = _5 & 65295; # DEBUG u32SlaveIsrEnable => u32SlaveIsrEnable_19 # DEBUG BEGIN_STMT _6 ={v} baseAddr_14->SSR; u32SlaveIsrStatus_20 = _6 & 65295; # DEBUG u32SlaveIsrStatus => u32SlaveIsrStatus_20 # DEBUG BEGIN_STMT if (u32MasterIsrEnable_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 488552529]: if (u32MasterIsrStatus_18 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 732828795]: if (u32SlaveIsrEnable_19 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 366414397]: if (u32SlaveIsrStatus_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 427483463]: # DEBUG BEGIN_STMT if (_1 == 0B) goto ; [30.00%] else goto ; [70.00%] [local count: 128245039]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterIRQHandler (instance_13(D)); goto ; [100.00%] [local count: 299238425]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveIRQHandler (instance_13(D)); goto ; [100.00%] [local count: 549621597]: # DEBUG BEGIN_STMT _7 ={v} baseAddr_14->MSR; baseAddr_14->MSR ={v} _7; # DEBUG BEGIN_STMT _8 ={v} baseAddr_14->SSR; baseAddr_14->SSR ={v} _8; goto ; [100.00%] [local count: 96636764]: # DEBUG BEGIN_STMT _9 ={v} baseAddr_14->MSR; baseAddr_14->MSR ={v} _9; # DEBUG BEGIN_STMT _10 ={v} baseAddr_14->SSR; baseAddr_14->SSR ={v} _10; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return; } Lpi2c_Ip_SlaveIRQHandler (uint32 instance) { uint32 regValue; uint32 regValue; boolean repeatStartDetect; struct Lpi2c_Ip_SlaveStateType * slave; struct LPI2C_Type * baseAddr; unsigned char _1; unsigned char _2; _Bool _3; long unsigned int _17; _Bool _18; long unsigned int _20; _Bool _21; [local count: 1073741823]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG stopDetect => 0 # DEBUG repeatStartDetect => 0 # DEBUG BEGIN_STMT baseAddr_9 = g_lpi2cBase[instance_8(D)]; # DEBUG baseAddr => baseAddr_9 # DEBUG BEGIN_STMT slave_10 = g_lpi2cSlaveStatePtr[instance_8(D)]; # DEBUG slave => slave_10 # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveCheckDataEvent (instance_8(D), baseAddr_9, slave_10); # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9 # DEBUG INLINE_ENTRY LPI2C_Get_SlaveSTOPDetectEvent # DEBUG BEGIN_STMT regValue_19 ={v} MEM[(const struct LPI2C_Type *)baseAddr_9].SSR; # DEBUG regValue => regValue_19 # DEBUG BEGIN_STMT _20 = regValue_19 >> 9; # DEBUG regValue => _20 & 1 # DEBUG BEGIN_STMT _21 = (_Bool) _20; # DEBUG baseAddr => NULL # DEBUG regValue => NULL # DEBUG stopDetect => _21 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9 # DEBUG INLINE_ENTRY LPI2C_Get_SlaveRepeatedStartEvent # DEBUG BEGIN_STMT regValue_16 ={v} MEM[(const struct LPI2C_Type *)baseAddr_9].SSR; # DEBUG regValue => regValue_16 # DEBUG BEGIN_STMT _17 = regValue_16 >> 8; # DEBUG regValue => _17 & 1 # DEBUG BEGIN_STMT _18 = (_Bool) _17; # DEBUG baseAddr => NULL # DEBUG regValue => NULL # DEBUG repeatStartDetect => _18 # DEBUG BEGIN_STMT if (_18 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870911]: # DEBUG BEGIN_STMT _1 = slave_10->repeatedStarts; _2 = _1 + 1; slave_10->repeatedStarts = _2; # DEBUG BEGIN_STMT if (_2 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 182536110]: _3 = slave_10->is10bitAddress; if (_3 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 91268055]: # DEBUG BEGIN_STMT # DEBUG repeatStartDetect => 0 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9 # DEBUG INLINE_ENTRY LPI2C_Clear_SlaveRepeatedStartEvent # DEBUG BEGIN_STMT baseAddr_9->SSR ={v} 256; [local count: 1073741823]: # repeatStartDetect_4 = PHI <_18(2), 1(3), 1(4), 0(5)> # DEBUG baseAddr => NULL # DEBUG repeatStartDetect => repeatStartDetect_4 # DEBUG BEGIN_STMT if (_21 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 719407022]: if (repeatStartDetect_4 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 714038313]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveStopDetectHandler (baseAddr_9, slave_10); # DEBUG BEGIN_STMT if (_21 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 357019156]: # DEBUG BEGIN_STMT slave_10->repeatedStarts = 0; [local count: 1073741824]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveCheckErrorEvent (baseAddr_9, slave_10); return; } Lpi2c_Ip_SlaveCheckErrorEvent (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_SlaveStateType * slave) { uint32 regValue; long unsigned int _7; _Bool _8; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_3(D) # DEBUG INLINE_ENTRY LPI2C_Get_SlaveBitErrorEvent # DEBUG BEGIN_STMT regValue_6 ={v} MEM[(const struct LPI2C_Type *)baseAddr_3(D)].SSR; # DEBUG regValue => regValue_6 # DEBUG BEGIN_STMT _7 = regValue_6 >> 10; # DEBUG regValue => _7 & 1 # DEBUG BEGIN_STMT _8 = (_Bool) _7; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_8 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveBitErrorEventHandler (baseAddr_3(D), slave_4(D)); [local count: 1073741824]: return; } Lpi2c_Ip_SlaveBitErrorEventHandler (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_SlaveStateType * slave) { uint32 tmp; [local count: 1073741824]: # DEBUG BEGIN_STMT slave_2(D)->status = 1; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG INLINE_ENTRY LPI2C_Clear_SlaveBitErrorEvent # DEBUG BEGIN_STMT baseAddr_4(D)->SSR ={v} 1024; # DEBUG baseAddr => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG interrupts => 1 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveInt # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_4(D)->SIER; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4294967294; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT baseAddr_4(D)->SIER ={v} tmp_7; # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveEndTransferHandler (slave_2(D), baseAddr_4(D)); return; } Lpi2c_Ip_SlaveStopDetectHandler (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_SlaveStateType * slave) { uint32 tmp; _1; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG INLINE_ENTRY LPI2C_Clear_SlaveSTOPDetectEvent # DEBUG BEGIN_STMT baseAddr_4(D)->SSR ={v} 512; # DEBUG baseAddr => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG INLINE_ENTRY LPI2C_Clear_SlaveRepeatedStartEvent # DEBUG BEGIN_STMT baseAddr_4(D)->SSR ={v} 256; # DEBUG baseAddr => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG interrupts => 1 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveInt # DEBUG BEGIN_STMT tmp_8 ={v} baseAddr_4(D)->SIER; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_9 = tmp_8 & 4294967294; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_4(D)->SIER ={v} tmp_9; # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT _1 = slave_5(D)->status; if (_1 == 2) goto ; [34.00%] else goto ; [66.00%] [local count: 365072220]: # DEBUG BEGIN_STMT slave_5(D)->status = 0; [local count: 1073741824]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveEndTransferHandler (slave_5(D), baseAddr_4(D)); return; } Lpi2c_Ip_SlaveCheckDataEvent (uint32 instance, struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_SlaveStateType * slave) { uint32 tmp; uint32 regValue; uint32 tmp; uint32 regValue; uint32 regValue; long unsigned int _12; _Bool _13; _Bool _15; long unsigned int _17; long unsigned int _19; _Bool _20; long unsigned int _22; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG slaveInterrupt => 0 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG INLINE_ENTRY LPI2C_Get_SlaveAddressValidEvent # DEBUG BEGIN_STMT regValue_11 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].SSR; # DEBUG regValue => regValue_11 # DEBUG BEGIN_STMT _12 = regValue_11 >> 2; # DEBUG regValue => _12 & 1 # DEBUG BEGIN_STMT _13 = (_Bool) _12; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_13 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveHandleAddressValidEvent (instance_6(D), baseAddr_5(D), slave_7(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG INLINE_ENTRY LPI2C_Get_SlaveTransmitDataEvent # DEBUG BEGIN_STMT regValue_14 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].SSR; # DEBUG regValue => regValue_14 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_14 & 1 # DEBUG BEGIN_STMT _15 = (_Bool) regValue_14; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_15 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG interrupts => 1 # DEBUG INLINE_ENTRY LPI2C_Get_SlaveInt # DEBUG BEGIN_STMT tmp_16 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].SIER; # DEBUG tmp => tmp_16 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _17 = tmp_16 & 1; if (_17 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: # DEBUG hasInterrupts => 1 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG hasInterrupts => NULL # DEBUG tmp => NULL # DEBUG slaveInterrupt => 1 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveHandleTransmitDataEvent (baseAddr_5(D), slave_7(D)); [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG hasInterrupts => NULL # DEBUG tmp => NULL # DEBUG slaveInterrupt => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG INLINE_ENTRY LPI2C_Get_SlaveReceiveDataEvent # DEBUG BEGIN_STMT regValue_18 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].SSR; # DEBUG regValue => regValue_18 # DEBUG BEGIN_STMT _19 = regValue_18 >> 1; # DEBUG regValue => _19 & 1 # DEBUG BEGIN_STMT _20 = (_Bool) _19; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_20 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG interrupts => 2 # DEBUG INLINE_ENTRY LPI2C_Get_SlaveInt # DEBUG BEGIN_STMT tmp_21 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].SIER; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _22 = tmp_21 & 2; if (_22 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: # DEBUG hasInterrupts => 1 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG hasInterrupts => NULL # DEBUG tmp => NULL # DEBUG slaveInterrupt => 1 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveHandleReceiveDataEvent (baseAddr_5(D), slave_7(D)); [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG hasInterrupts => NULL # DEBUG tmp => NULL # DEBUG slaveInterrupt => NULL return; } Lpi2c_Ip_SlaveEndTransferHandler (const struct Lpi2c_Ip_SlaveStateType * slave, struct LPI2C_Type * baseAddr) { _Bool _1; void (*) (Lpi2c_Ip_SlaveEventType, uint8) _2; unsigned char _3; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = slave_7(D)->slaveListening; if (_1 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveEndTransfer (baseAddr_8(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT _2 = slave_7(D)->slaveCallback; if (_2 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619278]: # DEBUG BEGIN_STMT _3 = slave_7(D)->callbackParam; _2 (7, _3); [local count: 1073741824]: # DEBUG BEGIN_STMT return; } Lpi2c_Ip_SlaveEndTransfer (struct LPI2C_Type * baseAddr) { uint32 tmp; uint32 regValue; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG interrupts => 3847 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveInt # DEBUG BEGIN_STMT tmp_5 ={v} baseAddr_2(D)->SIER; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_6 = tmp_5 & 4294963448; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT baseAddr_2(D)->SIER ={v} tmp_6; # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveEnable # DEBUG BEGIN_STMT regValue_3 ={v} baseAddr_2(D)->SCR; # DEBUG regValue => regValue_3 # DEBUG BEGIN_STMT regValue_4 = regValue_3 & 4294967294; # DEBUG regValue => regValue_4 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_4 # DEBUG BEGIN_STMT baseAddr_2(D)->SCR ={v} regValue_4; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL return; } Lpi2c_Ip_SlaveGetTransferStatus (uint32 instance, uint32 * bytesRemaining) { const struct Lpi2c_Ip_SlaveStateType * slave; _1; long unsigned int _2; Lpi2c_Ip_StatusType _9; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT slave_6 = g_lpi2cSlaveStatePtr[instance_5(D)]; # DEBUG slave => slave_6 # DEBUG BEGIN_STMT if (bytesRemaining_7(D) != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619278]: _1 = slave_6->transferType; if (_1 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 255550554]: # DEBUG BEGIN_STMT _2 = slave_6->bufferSize; *bytesRemaining_7(D) = _2; [local count: 1073741824]: # DEBUG BEGIN_STMT _9 = slave_6->status; return _9; } Lpi2c_Ip_SlaveSetBuffer (uint32 instance, uint8 * dataBuff, uint32 dataSize) { struct Lpi2c_Ip_SlaveStateType * slave; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT slave_3 = g_lpi2cSlaveStatePtr[instance_2(D)]; # DEBUG slave => slave_3 # DEBUG BEGIN_STMT slave_3->dataBuffer = dataBuff_4(D); # DEBUG BEGIN_STMT slave_3->bufferSize = dataSize_6(D); # DEBUG BEGIN_STMT return 0; } Lpi2c_Ip_SlaveDeinit (uint32 instance) { uint32 regValue; uint32 regValue; uint32 regValue; const struct Lpi2c_Ip_SlaveStateType * slave; struct LPI2C_Type * baseAddr; _1; _Bool _2; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_6 = g_lpi2cBase[instance_5(D)]; # DEBUG baseAddr => baseAddr_6 # DEBUG BEGIN_STMT slave_7 = g_lpi2cSlaveStatePtr[instance_5(D)]; # DEBUG slave => slave_7 # DEBUG BEGIN_STMT _1 = slave_7->transferType; if (_1 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: _2 = slave_7->slaveListening; if (_2 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 268435456]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveRxDMA # DEBUG BEGIN_STMT regValue_11 ={v} baseAddr_6->SDER; # DEBUG regValue => regValue_11 # DEBUG BEGIN_STMT regValue_12 = regValue_11 & 4294967293; # DEBUG regValue => regValue_12 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_12 # DEBUG BEGIN_STMT baseAddr_6->SDER ={v} regValue_12; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveTxDMA # DEBUG BEGIN_STMT regValue_9 ={v} baseAddr_6->SDER; # DEBUG regValue => regValue_9 # DEBUG BEGIN_STMT regValue_10 = regValue_9 & 4294967294; # DEBUG regValue => regValue_10 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_10 # DEBUG BEGIN_STMT baseAddr_6->SDER ={v} regValue_10; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT g_lpi2cSlaveStatePtr[instance_5(D)] = 0B; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveEnable # DEBUG BEGIN_STMT regValue_13 ={v} baseAddr_6->SCR; # DEBUG regValue => regValue_13 # DEBUG BEGIN_STMT regValue_14 = regValue_13 & 4294967294; # DEBUG regValue => regValue_14 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_14 # DEBUG BEGIN_STMT baseAddr_6->SCR ={v} regValue_14; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT return 0; } Lpi2c_Ip_StartListening (uint32 u32Instance) { [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG D#3 => g_lpi2cSlaveStatePtr[u32Instance_2(D)] # DEBUG slave => D#3 # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveActivateEvents (u32Instance_2(D)); # DEBUG BEGIN_STMT return; } Lpi2c_Ip_SlaveInit (uint32 instance, const struct Lpi2c_Ip_SlaveConfigType * userConfigPtr) { struct LPI2C_Type * baseAddr; struct Lpi2c_Ip_SlaveStateType * _1; void (*) (Lpi2c_Ip_SlaveEventType, uint8) _2; unsigned char _3; _4; long unsigned int _5; long unsigned int _6; _Bool _7; _Bool _8; short unsigned int _9; _Bool _10; _11; long unsigned int _12; long unsigned int _13; _Bool _14; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_18 = g_lpi2cBase[instance_17(D)]; # DEBUG baseAddr => baseAddr_18 # DEBUG BEGIN_STMT _1 = userConfigPtr_19(D)->slaveState; g_lpi2cSlaveStatePtr[instance_17(D)] = _1; # DEBUG BEGIN_STMT # DEBUG slave => _1 # DEBUG BEGIN_STMT _1->status = 0; # DEBUG BEGIN_STMT _2 = userConfigPtr_19(D)->slaveCallback; _1->slaveCallback = _2; # DEBUG BEGIN_STMT _3 = userConfigPtr_19(D)->callbackParam; _1->callbackParam = _3; # DEBUG BEGIN_STMT _1->dataBuffer = 0B; # DEBUG BEGIN_STMT _1->bufferSize = 0; # DEBUG BEGIN_STMT _1->direction = 0; # DEBUG BEGIN_STMT _4 = userConfigPtr_19(D)->transferType; _1->transferType = _4; # DEBUG BEGIN_STMT _5 = userConfigPtr_19(D)->dmaTxChannel; _1->dmaTxChannel = _5; # DEBUG BEGIN_STMT _6 = userConfigPtr_19(D)->dmaRxChannel; _1->dmaRxChannel = _6; # DEBUG BEGIN_STMT _1->isTransferInProgress ={v} 0; # DEBUG BEGIN_STMT _7 = userConfigPtr_19(D)->is10bitAddr; _1->is10bitAddress = _7; # DEBUG BEGIN_STMT _1->repeatedStarts = 0; # DEBUG BEGIN_STMT _8 = userConfigPtr_19(D)->slaveListening; _1->slaveListening = _8; # DEBUG BEGIN_STMT LPI2C_Init (baseAddr_18); # DEBUG BEGIN_STMT _9 = userConfigPtr_19(D)->slaveAddress; _10 = userConfigPtr_19(D)->is10bitAddr; Lpi2c_Ip_SlaveConigureAddress (baseAddr_18, _9, _10); # DEBUG BEGIN_STMT _11 = userConfigPtr_19(D)->operatingMode; Lpi2c_Ip_SlaveSetOperatingMode (instance_17(D), _11); # DEBUG BEGIN_STMT _12 = userConfigPtr_19(D)->u32GlitchFilterSDA; _13 = userConfigPtr_19(D)->u32GlitchFilterSCL; Lpi2c_Ip_SlaveConfigureGlitchFilter (baseAddr_18, _12, _13); # DEBUG BEGIN_STMT _14 = _1->slaveListening; if (_14 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveActivateEvents (instance_17(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT return 0; } Lpi2c_Ip_SlaveConfigureGlitchFilter (struct LPI2C_Type * baseAddr, uint32 u32GlitchFilterSDA, uint32 u32GlitchFilterSCL) { [local count: 1073741824]: # DEBUG BEGIN_STMT LPI2C_Set_SlaveGlitchFilterSDA (baseAddr_2(D), u32GlitchFilterSDA_3(D)); # DEBUG BEGIN_STMT LPI2C_Set_SlaveGlitchFilterSCL (baseAddr_2(D), u32GlitchFilterSCL_5(D)); return; } Lpi2c_Ip_SlaveConigureAddress (struct LPI2C_Type * baseAddr, uint16 slaveAddr, boolean is10bitAddr) { uint32 tmp; uint32 tmp; [local count: 1073741824]: # DEBUG BEGIN_STMT LPI2C_Set_SlaveAddr0 (baseAddr_3(D), slaveAddr_4(D)); # DEBUG BEGIN_STMT if (is10bitAddr_6(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_3(D) # DEBUG configuration => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveAddrConfig # DEBUG BEGIN_STMT tmp_7 ={v} baseAddr_3(D)->SCFGR1; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT tmp_8 = tmp_7 & 4294508543; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT tmp_9 = tmp_8 | 65536; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_3(D)->SCFGR1 ={v} tmp_9; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_3(D) # DEBUG configuration => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveAddrConfig # DEBUG BEGIN_STMT tmp_10 ={v} baseAddr_3(D)->SCFGR1; # DEBUG tmp => tmp_10 # DEBUG BEGIN_STMT tmp_11 = tmp_10 & 4294508543; # DEBUG tmp => tmp_11 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_11 # DEBUG BEGIN_STMT baseAddr_3(D)->SCFGR1 ={v} tmp_11; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG configuration => NULL # DEBUG tmp => NULL # DEBUG baseAddr => NULL # DEBUG configuration => NULL # DEBUG tmp => NULL return; } Lpi2c_Ip_SlaveActivateEvents (uint32 instance) { uint32 regValue; uint32 tmp; uint32 tmp; const struct Lpi2c_Ip_SlaveStateType * slave; struct LPI2C_Type * baseAddr; _1; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_6 = g_lpi2cBase[instance_5(D)]; # DEBUG baseAddr => baseAddr_6 # DEBUG BEGIN_STMT slave_7 = g_lpi2cSlaveStatePtr[instance_5(D)]; # DEBUG slave => slave_7 # DEBUG BEGIN_STMT _1 = slave_7->transferType; if (_1 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG interrupts => 3844 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveInt # DEBUG BEGIN_STMT tmp_8 ={v} baseAddr_6->SIER; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_9 = tmp_8 | 3844; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_6->SIER ={v} tmp_9; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT if (_1 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 365072220]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG interrupts => 3846 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveInt # DEBUG BEGIN_STMT tmp_10 ={v} baseAddr_6->SIER; # DEBUG tmp => tmp_10 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_11 = tmp_10 | 3846; # DEBUG tmp => tmp_11 # DEBUG BEGIN_STMT baseAddr_6->SIER ={v} tmp_11; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveEnable # DEBUG BEGIN_STMT regValue_12 ={v} baseAddr_6->SCR; # DEBUG regValue => regValue_12 # DEBUG BEGIN_STMT regValue_13 = regValue_12 & 4294967294; # DEBUG regValue => regValue_13 # DEBUG BEGIN_STMT regValue_14 = regValue_13 | 1; # DEBUG regValue => regValue_14 # DEBUG BEGIN_STMT baseAddr_6->SCR ={v} regValue_14; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL return; } Lpi2c_Ip_MasterIRQHandler (uint32 instance) { uint32 regValue; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; void (*) (Lpi2c_Ip_MasterEventType, uint8) _1; unsigned char _2; long unsigned int _13; _Bool _14; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_7 = g_lpi2cBase[instance_6(D)]; # DEBUG baseAddr => baseAddr_7 # DEBUG BEGIN_STMT master_8 = g_lpi2cMasterStatePtr[instance_6(D)]; # DEBUG master => master_8 # DEBUG BEGIN_STMT Lpi2c_Ip_MasterCheckDataTxRxEvent (baseAddr_7, master_8); # DEBUG BEGIN_STMT Lpi2c_Ip_MasterCheckErrorEvents (baseAddr_7, master_8); # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_7 # DEBUG INLINE_ENTRY LPI2C_Get_MasterPinLowTimeoutEvent # DEBUG BEGIN_STMT regValue_12 ={v} MEM[(const struct LPI2C_Type *)baseAddr_7].MSR; # DEBUG regValue => regValue_12 # DEBUG BEGIN_STMT _13 = regValue_12 >> 13; # DEBUG regValue => _13 & 1 # DEBUG BEGIN_STMT _14 = (_Bool) _13; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_14 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _1 = master_8->masterCallback; if (_1 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 375809639]: # DEBUG BEGIN_STMT _2 = master_8->callbackParam; _1 (12, _2); [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_7 # DEBUG INLINE_ENTRY LPI2C_Clear_MasterPinLowTimeoutEvent # DEBUG BEGIN_STMT baseAddr_7->MSR ={v} 8192; [local count: 1073741824]: # DEBUG baseAddr => NULL return; } Lpi2c_Ip_MasterCheckDataTxRxEvent (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 regValue; uint32 regValue; _Bool _9; long unsigned int _11; _Bool _12; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTransmitDataRequestEvent # DEBUG BEGIN_STMT regValue_8 ={v} MEM[(const struct LPI2C_Type *)baseAddr_4(D)].MSR; # DEBUG regValue => regValue_8 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_8 & 1 # DEBUG BEGIN_STMT _9 = (_Bool) regValue_8; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_9 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterHandleTransmitDataRequest (baseAddr_4(D), master_5(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterReceiveDataReadyEvent # DEBUG BEGIN_STMT regValue_10 ={v} MEM[(const struct LPI2C_Type *)baseAddr_4(D)].MSR; # DEBUG regValue => regValue_10 # DEBUG BEGIN_STMT _11 = regValue_10 >> 1; # DEBUG regValue => _11 & 1 # DEBUG BEGIN_STMT _12 = (_Bool) _11; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_12 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterHandleReceiveDataReadyEvent (baseAddr_4(D), master_5(D)); [local count: 1073741824]: return; } Lpi2c_Ip_MasterGetTransferStatus (uint32 instance, uint32 * bytesRemaining) { const struct Lpi2c_Ip_MasterStateType * master; _1; long unsigned int _2; Lpi2c_Ip_StatusType _9; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT master_6 = g_lpi2cMasterStatePtr[instance_5(D)]; # DEBUG master => master_6 # DEBUG BEGIN_STMT if (bytesRemaining_7(D) != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619278]: _1 = master_6->transferType; if (_1 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 255550554]: # DEBUG BEGIN_STMT _2 = master_6->bufferSize; *bytesRemaining_7(D) = _2; [local count: 1073741824]: # DEBUG BEGIN_STMT _9 ={v} master_6->status; return _9; } Lpi2c_Ip_MasterReceiveDataBlocking (uint32 instance, uint8 * rxBuff, uint32 rxSize, boolean sendStop, uint32 timeout) { const struct Lpi2c_Ip_MasterStateType * master; Lpi2c_Ip_StatusType retStatus; uint32 TimeoutTicks; uint32 ElapsedTicks; uint32 CurrentTicks; struct Lpi2c_Ip_MasterStateType * master; _Bool _1; long unsigned int _2; long unsigned int _30; _36; [local count: 240451187]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT CurrentTicks = 0; # DEBUG BEGIN_STMT # DEBUG ElapsedTicks => 0 # DEBUG BEGIN_STMT TimeoutTicks_13 = OsIf_MicrosToTicks (timeout_11(D), 1); # DEBUG TimeoutTicks => TimeoutTicks_13 # DEBUG BEGIN_STMT # DEBUG retStatus => 2 # DEBUG BEGIN_STMT master_15 = g_lpi2cMasterStatePtr[instance_14(D)]; # DEBUG master => master_15 # DEBUG BEGIN_STMT _1 ={v} master_15->i2cIdle; if (_1 != 0) goto ; [47.77%] else goto ; [52.23%] [local count: 114863532]: # DEBUG BEGIN_STMT master_15->bufferSize = rxSize_16(D); # DEBUG BEGIN_STMT master_15->dataBuffer = rxBuff_18(D); # DEBUG BEGIN_STMT master_15->direction = 1; # DEBUG BEGIN_STMT master_15->sendStop = sendStop_21(D); # DEBUG BEGIN_STMT master_15->i2cIdle ={v} 0; # DEBUG BEGIN_STMT master_15->status ={v} 2; # DEBUG BEGIN_STMT Lpi2c_Ip_MasterInterruptReceiveInit (instance_14(D), rxSize_16(D)); # DEBUG BEGIN_STMT _2 = OsIf_GetCounter (1); CurrentTicks = _2; [local count: 1073741824]: # ElapsedTicks_3 = PHI <0(3), ElapsedTicks_31(10)> # DEBUG ElapsedTicks => ElapsedTicks_3 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT Lpi2c_Ip_MasterReceive (instance_14(D)); # DEBUG BEGIN_STMT _30 = OsIf_GetElapsed (&CurrentTicks, 1); ElapsedTicks_31 = ElapsedTicks_3 + _30; # DEBUG ElapsedTicks => ElapsedTicks_31 # DEBUG BEGIN_STMT # DEBUG instance => instance_14(D) # DEBUG bytesRemaining => 0B # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterGetTransferStatus # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT master_35 = g_lpi2cMasterStatePtr[instance_14(D)]; # DEBUG master => master_35 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _36 ={v} master_35->status; # DEBUG instance => NULL # DEBUG bytesRemaining => NULL # DEBUG master => NULL if (_36 == 2) goto ; [94.50%] else goto ; [5.50%] [local count: 1014686025]: if (TimeoutTicks_13 > ElapsedTicks_31) goto ; [94.50%] else goto ; [5.50%] [local count: 958878293]: goto ; [100.00%] [local count: 114863532]: # ElapsedTicks_10 = PHI # DEBUG BEGIN_STMT if (ElapsedTicks_10 >= TimeoutTicks_13) goto ; [50.00%] else goto ; [50.00%] [local count: 57431766]: # DEBUG BEGIN_STMT master_15->status ={v} 9; [local count: 114863532]: # DEBUG BEGIN_STMT retStatus_33 ={v} master_15->status; # DEBUG retStatus => retStatus_33 [local count: 240451187]: # retStatus_4 = PHI <2(2), retStatus_33(8)> # DEBUG retStatus => retStatus_4 # DEBUG BEGIN_STMT CurrentTicks ={v} {CLOBBER}; return retStatus_4; } Lpi2c_Ip_MasterReceiveData (uint32 instance, uint8 * rxBuff, uint32 rxSize, boolean sendStop) { uint32 tmp; uint32 tmp; Lpi2c_Ip_StatusType retStatus; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; _Bool _1; unsigned char _18; unsigned char _19; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG retStatus => 2 # DEBUG BEGIN_STMT baseAddr_6 = g_lpi2cBase[instance_5(D)]; # DEBUG baseAddr => baseAddr_6 # DEBUG BEGIN_STMT master_7 = g_lpi2cMasterStatePtr[instance_5(D)]; # DEBUG master => master_7 # DEBUG BEGIN_STMT _1 ={v} master_7->i2cIdle; if (_1 != 0) goto ; [47.77%] else goto ; [52.23%] [local count: 512926469]: # DEBUG BEGIN_STMT # DEBUG retStatus => 0 # DEBUG BEGIN_STMT master_7->bufferSize = rxSize_8(D); # DEBUG BEGIN_STMT master_7->i2cIdle ={v} 0; # DEBUG BEGIN_STMT master_7->sendStop = sendStop_11(D); # DEBUG BEGIN_STMT master_7->dataBuffer = rxBuff_13(D); # DEBUG BEGIN_STMT master_7->direction = 1; # DEBUG BEGIN_STMT master_7->status ={v} 2; # DEBUG BEGIN_STMT Lpi2c_Ip_MasterInterruptReceiveInit (instance_5(D), rxSize_8(D)); # DEBUG BEGIN_STMT # DEBUG master => master_7 # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterCmdQueueEmpty # DEBUG BEGIN_STMT _18 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_7].cmdQueue.writeIdx; _19 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_7].cmdQueue.readIdx; # DEBUG master => NULL if (_18 != _19) goto ; [66.00%] else goto ; [34.00%] [local count: 338531470]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG interrupts => 7171 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_MasterInt # DEBUG BEGIN_STMT tmp_20 ={v} baseAddr_6->MIER; # DEBUG tmp => tmp_20 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_21 = tmp_20 | 7171; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT baseAddr_6->MIER ={v} tmp_21; goto ; [100.00%] [local count: 174394999]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG interrupts => 7170 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_MasterInt # DEBUG BEGIN_STMT tmp_22 ={v} baseAddr_6->MIER; # DEBUG tmp => tmp_22 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_23 = tmp_22 | 7170; # DEBUG tmp => tmp_23 # DEBUG BEGIN_STMT baseAddr_6->MIER ={v} tmp_23; [local count: 1073741824]: # retStatus_2 = PHI <2(2), 0(4), 0(5)> # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG retStatus => retStatus_2 # DEBUG BEGIN_STMT return retStatus_2; } Lpi2c_Ip_MasterInterruptReceiveInit (uint32 instance, uint32 rxSize) { uint16 rxBytes; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; unsigned char _1; unsigned char _2; long unsigned int _3; short unsigned int _4; [local count: 1073741824]: # DEBUG BEGIN_STMT baseAddr_8 = g_lpi2cBase[instance_7(D)]; # DEBUG baseAddr => baseAddr_8 # DEBUG BEGIN_STMT master_9 = g_lpi2cMasterStatePtr[instance_7(D)]; # DEBUG master => master_9 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSendAddress (baseAddr_8, master_9, 1); # DEBUG BEGIN_STMT _1 = (unsigned char) rxSize_11(D); _2 = _1 + 255; Lpi2c_Ip_MasterQueueCmd (baseAddr_8, master_9, 1, _2); # DEBUG BEGIN_STMT rxBytes_14 = LPI2C_Get_MasterRxFIFOSize (baseAddr_8); # DEBUG rxBytes => rxBytes_14 # DEBUG BEGIN_STMT _3 = (long unsigned int) rxBytes_14; if (_3 > rxSize_11(D)) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT rxBytes_15 = (uint16) _1; # DEBUG rxBytes => rxBytes_15 [local count: 1073741824]: # rxBytes_5 = PHI # DEBUG rxBytes => rxBytes_5 # DEBUG BEGIN_STMT _4 = rxBytes_5 + 65535; LPI2C_Set_MasterRxFIFOWatermark (baseAddr_8, _4); return; } Lpi2c_Ip_MasterSendDataBlocking (uint32 instance, uint8 * txBuff, uint32 txSize, boolean sendStop, uint32 timeout) { const struct Lpi2c_Ip_MasterStateType * master; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; Lpi2c_Ip_StatusType retStatus; uint32 TimeoutTicks; uint32 ElapsedTicks; uint32 CurrentTicks; _Bool _1; long unsigned int _2; long unsigned int _31; _37; [local count: 240451187]: # DEBUG BEGIN_STMT CurrentTicks = 0; # DEBUG BEGIN_STMT # DEBUG ElapsedTicks => 0 # DEBUG BEGIN_STMT TimeoutTicks_13 = OsIf_MicrosToTicks (timeout_11(D), 1); # DEBUG TimeoutTicks => TimeoutTicks_13 # DEBUG BEGIN_STMT # DEBUG retStatus => 2 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_15 = g_lpi2cBase[instance_14(D)]; # DEBUG baseAddr => baseAddr_15 # DEBUG BEGIN_STMT master_16 = g_lpi2cMasterStatePtr[instance_14(D)]; # DEBUG master => master_16 # DEBUG BEGIN_STMT _1 ={v} master_16->i2cIdle; if (_1 != 0) goto ; [47.77%] else goto ; [52.23%] [local count: 114863532]: # DEBUG BEGIN_STMT master_16->bufferSize = txSize_17(D); # DEBUG BEGIN_STMT master_16->dataBuffer = txBuff_19(D); # DEBUG BEGIN_STMT master_16->direction = 0; # DEBUG BEGIN_STMT master_16->sendStop = sendStop_22(D); # DEBUG BEGIN_STMT master_16->i2cIdle ={v} 0; # DEBUG BEGIN_STMT master_16->status ={v} 2; # DEBUG BEGIN_STMT Lpi2c_Ip_MasterInitSendTransfer (baseAddr_15, master_16); # DEBUG BEGIN_STMT _2 = OsIf_GetCounter (1); CurrentTicks = _2; [local count: 1073741824]: # ElapsedTicks_3 = PHI <0(3), ElapsedTicks_32(10)> # DEBUG ElapsedTicks => ElapsedTicks_3 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSend (instance_14(D)); # DEBUG BEGIN_STMT _31 = OsIf_GetElapsed (&CurrentTicks, 1); ElapsedTicks_32 = ElapsedTicks_3 + _31; # DEBUG ElapsedTicks => ElapsedTicks_32 # DEBUG BEGIN_STMT # DEBUG instance => instance_14(D) # DEBUG bytesRemaining => 0B # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterGetTransferStatus # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT master_36 = g_lpi2cMasterStatePtr[instance_14(D)]; # DEBUG master => master_36 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _37 ={v} master_36->status; # DEBUG instance => NULL # DEBUG bytesRemaining => NULL # DEBUG master => NULL if (_37 == 2) goto ; [94.50%] else goto ; [5.50%] [local count: 1014686025]: if (TimeoutTicks_13 > ElapsedTicks_32) goto ; [94.50%] else goto ; [5.50%] [local count: 958878293]: goto ; [100.00%] [local count: 114863532]: # ElapsedTicks_10 = PHI # DEBUG BEGIN_STMT if (ElapsedTicks_10 >= TimeoutTicks_13) goto ; [50.00%] else goto ; [50.00%] [local count: 57431766]: # DEBUG BEGIN_STMT master_16->status ={v} 9; [local count: 114863532]: # DEBUG BEGIN_STMT retStatus_34 ={v} master_16->status; # DEBUG retStatus => retStatus_34 [local count: 240451187]: # retStatus_4 = PHI <2(2), retStatus_34(8)> # DEBUG retStatus => retStatus_4 # DEBUG BEGIN_STMT CurrentTicks ={v} {CLOBBER}; return retStatus_4; } Lpi2c_Ip_MasterInitSendTransfer (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 tmp; [local count: 1073741824]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSendAddress (baseAddr_2(D), master_3(D), 0); # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueData (baseAddr_2(D), master_3(D)); # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG value => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterTxFIFOWatermark # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_2(D)->MFCR; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4294967292; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT baseAddr_2(D)->MFCR ={v} tmp_7; # DEBUG baseAddr => NULL # DEBUG value => NULL # DEBUG tmp => NULL return; } Lpi2c_Ip_MasterSendData (uint32 instance, uint8 * txBuff, uint32 txSize, boolean sendStop) { uint32 tmp; uint32 tmp; Lpi2c_Ip_StatusType retStatus; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; _Bool _1; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG retStatus => 2 # DEBUG BEGIN_STMT baseAddr_6 = g_lpi2cBase[instance_5(D)]; # DEBUG baseAddr => baseAddr_6 # DEBUG BEGIN_STMT master_7 = g_lpi2cMasterStatePtr[instance_5(D)]; # DEBUG master => master_7 # DEBUG BEGIN_STMT _1 ={v} master_7->i2cIdle; if (_1 != 0) goto ; [47.77%] else goto ; [52.23%] [local count: 512926469]: # DEBUG BEGIN_STMT master_7->bufferSize = txSize_8(D); # DEBUG BEGIN_STMT master_7->dataBuffer = txBuff_10(D); # DEBUG BEGIN_STMT master_7->direction = 0; # DEBUG BEGIN_STMT master_7->sendStop = sendStop_13(D); # DEBUG BEGIN_STMT master_7->i2cIdle ={v} 0; # DEBUG BEGIN_STMT master_7->status ={v} 2; # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSendAddress (baseAddr_6, master_7, 0); # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueData (baseAddr_6, master_7); # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG value => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterTxFIFOWatermark # DEBUG BEGIN_STMT tmp_21 ={v} baseAddr_6->MFCR; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT tmp_22 = tmp_21 & 4294967292; # DEBUG tmp => tmp_22 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_22 # DEBUG BEGIN_STMT baseAddr_6->MFCR ={v} tmp_22; # DEBUG baseAddr => NULL # DEBUG value => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6 # DEBUG interrupts => 15361 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_MasterInt # DEBUG BEGIN_STMT tmp_19 ={v} baseAddr_6->MIER; # DEBUG tmp => tmp_19 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_20 = tmp_19 | 15361; # DEBUG tmp => tmp_20 # DEBUG BEGIN_STMT baseAddr_6->MIER ={v} tmp_20; # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT # DEBUG retStatus => 0 [local count: 1073741824]: # retStatus_2 = PHI <2(2), 0(3)> # DEBUG retStatus => retStatus_2 # DEBUG BEGIN_STMT return retStatus_2; } Lpi2c_Ip_MasterSetSlaveAddr (uint32 instance, const uint16 address, const boolean is10bitAddr) { struct Lpi2c_Ip_MasterStateType * master; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT master_3 = g_lpi2cMasterStatePtr[instance_2(D)]; # DEBUG master => master_3 # DEBUG BEGIN_STMT master_3->slaveAddress = address_4(D); # DEBUG BEGIN_STMT master_3->is10bitAddr = is10bitAddr_6(D); return; } Lpi2c_Ip_MasterGetBaudRate (uint32 instance, uint32 inputClock, uint32 * baudRate) { uint32 tmp; uint32 tmp; uint32 tmp; uint32 tmp; uint32 tmp; const struct Lpi2c_Ip_MasterStateType * master; const struct LPI2C_Type * baseAddr; long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _22; long unsigned int _29; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_13 = g_lpi2cBase[instance_12(D)]; # DEBUG baseAddr => baseAddr_13 # DEBUG BEGIN_STMT master_14 = g_lpi2cMasterStatePtr[instance_12(D)]; # DEBUG master => master_14 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_13 # DEBUG INLINE_ENTRY LPI2C_Get_MasterPrescaler # DEBUG BEGIN_STMT tmp_24 ={v} baseAddr_13->MCFGR1; # DEBUG tmp => tmp_24 # DEBUG BEGIN_STMT tmp_25 = tmp_24 & 7; # DEBUG tmp => tmp_25 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG prescaler => tmp_25 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_13 # DEBUG INLINE_ENTRY LPI2C_Get_MasterClockHighPeriod # DEBUG BEGIN_STMT tmp_21 ={v} baseAddr_13->MCCR0; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT _22 = tmp_21 >> 8; tmp_23 = _22 & 63; # DEBUG tmp => tmp_23 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG clkHi => tmp_23 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_13 # DEBUG INLINE_ENTRY LPI2C_Get_MasterClockLowPeriod # DEBUG BEGIN_STMT tmp_19 ={v} baseAddr_13->MCCR0; # DEBUG tmp => tmp_19 # DEBUG BEGIN_STMT tmp_20 = tmp_19 & 63; # DEBUG tmp => tmp_20 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG clkLo => tmp_20 # DEBUG BEGIN_STMT _1 = tmp_20 + tmp_23; _2 = _1 + 2; _3 = _2 << tmp_25; _4 = inputClock_15(D) / _3; *baudRate_16(D) = _4; # DEBUG BEGIN_STMT _5 = master_14->operatingMode; if (_5 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 365072220]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_13 # DEBUG INLINE_ENTRY LPI2C_Get_MasterClockHighPeriodHS # DEBUG BEGIN_STMT tmp_28 ={v} baseAddr_13->MCCR1; # DEBUG tmp => tmp_28 # DEBUG BEGIN_STMT _29 = tmp_28 >> 8; tmp_30 = _29 & 63; # DEBUG tmp => tmp_30 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG clkHi => tmp_30 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_13 # DEBUG INLINE_ENTRY LPI2C_Get_MasterClockLowPeriodHS # DEBUG BEGIN_STMT tmp_26 ={v} baseAddr_13->MCCR1; # DEBUG tmp => tmp_26 # DEBUG BEGIN_STMT tmp_27 = tmp_26 & 63; # DEBUG tmp => tmp_27 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG clkLo => tmp_27 # DEBUG BEGIN_STMT _6 = tmp_27 + tmp_30; _7 = _6 + 2; _8 = _7 << tmp_25; _9 = inputClock_15(D) / _8; *baudRate_16(D) = _9; [local count: 1073741824]: return; } Lpi2c_Ip_MasterDeinit (uint32 instance) { uint32 regValue; struct LPI2C_Type * baseAddr; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_3 = g_lpi2cBase[instance_2(D)]; # DEBUG baseAddr => baseAddr_3 # DEBUG BEGIN_STMT # DEBUG D#2 => g_lpi2cMasterStatePtr[instance_2(D)] # DEBUG master => D#2 # DEBUG BEGIN_STMT g_lpi2cMasterStatePtr[instance_2(D)] = 0B; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_3 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterEnable # DEBUG BEGIN_STMT regValue_5 ={v} baseAddr_3->MCR; # DEBUG regValue => regValue_5 # DEBUG BEGIN_STMT regValue_6 = regValue_5 & 4294967294; # DEBUG regValue => regValue_6 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_6 # DEBUG BEGIN_STMT baseAddr_3->MCR ={v} regValue_6; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT return 0; } Lpi2c_Ip_MasterInit (uint32 instance, const struct Lpi2c_Ip_MasterConfigType * userConfigPtr) { struct Lpi2c_Ip_MasterStateType * master; uint32 regValue; struct LPI2C_Type * baseAddr; struct Lpi2c_Ip_MasterStateType * _1; short unsigned int _2; _Bool _3; _4; long unsigned int _5; long unsigned int _6; void (*) (Lpi2c_Ip_MasterEventType, uint8) _7; unsigned char _8; unsigned char _9; const struct Lpi2c_Ip_BaudRateType * _10; _11; const struct Lpi2c_Ip_BaudRateType * _12; short unsigned int _13; _Bool _14; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_17 = g_lpi2cBase[instance_16(D)]; # DEBUG baseAddr => baseAddr_17 # DEBUG BEGIN_STMT _1 = userConfigPtr_18(D)->masterState; g_lpi2cMasterStatePtr[instance_16(D)] = _1; # DEBUG BEGIN_STMT # DEBUG master => _1 # DEBUG BEGIN_STMT _1->direction = 0; # DEBUG BEGIN_STMT _1->dataBuffer = 0B; # DEBUG BEGIN_STMT _1->bufferSize = 0; # DEBUG BEGIN_STMT _1->status ={v} 0; # DEBUG BEGIN_STMT _1->i2cIdle ={v} 1; # DEBUG BEGIN_STMT _2 = userConfigPtr_18(D)->slaveAddress; _1->slaveAddress = _2; # DEBUG BEGIN_STMT _3 = userConfigPtr_18(D)->is10bitAddr; _1->is10bitAddr = _3; # DEBUG BEGIN_STMT _4 = userConfigPtr_18(D)->transferType; _1->transferType = _4; # DEBUG BEGIN_STMT _5 = userConfigPtr_18(D)->dmaTxChannel; _1->dmaTxChannel = _5; # DEBUG BEGIN_STMT _6 = userConfigPtr_18(D)->dmaRxChannel; _1->dmaRxChannel = _6; # DEBUG BEGIN_STMT _7 = userConfigPtr_18(D)->masterCallback; _1->masterCallback = _7; # DEBUG BEGIN_STMT _8 = userConfigPtr_18(D)->callbackParam; _1->callbackParam = _8; # DEBUG BEGIN_STMT _9 = userConfigPtr_18(D)->masterCode; _1->masterCode = _9; # DEBUG BEGIN_STMT _1->highSpeedInProgress = 0; # DEBUG BEGIN_STMT _10 = userConfigPtr_18(D)->baudrateParams; _1->baudrateParams = _10; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_17 # DEBUG master => _1 # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterInitModule # DEBUG BEGIN_STMT # DEBUG master => _1 # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterResetQueue # DEBUG BEGIN_STMT _1->cmdQueue.readIdx = 0; # DEBUG BEGIN_STMT _1->cmdQueue.writeIdx = 0; # DEBUG master => NULL # DEBUG BEGIN_STMT LPI2C_Init (baseAddr_17); # DEBUG baseAddr => NULL # DEBUG master => NULL # DEBUG BEGIN_STMT Lpi2c_Ip_MasterConfigFeatures (baseAddr_17, userConfigPtr_18(D)); # DEBUG BEGIN_STMT _11 = userConfigPtr_18(D)->operatingMode; _12 = _1->baudrateParams; Lpi2c_Ip_MasterSetBaudRateInit (instance_16(D), _11, _12); # DEBUG BEGIN_STMT _13 = userConfigPtr_18(D)->slaveAddress; _14 = userConfigPtr_18(D)->is10bitAddr; # DEBUG instance => instance_16(D) # DEBUG address => _13 # DEBUG is10bitAddr => _14 # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterSetSlaveAddr # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT master_40 = g_lpi2cMasterStatePtr[instance_16(D)]; # DEBUG master => master_40 # DEBUG BEGIN_STMT master_40->slaveAddress = _13; # DEBUG BEGIN_STMT master_40->is10bitAddr = _14; # DEBUG instance => NULL # DEBUG address => NULL # DEBUG is10bitAddr => NULL # DEBUG master => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_17 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_MasterEnable # DEBUG BEGIN_STMT regValue_37 ={v} baseAddr_17->MCR; # DEBUG regValue => regValue_37 # DEBUG BEGIN_STMT regValue_38 = regValue_37 & 4294967294; # DEBUG regValue => regValue_38 # DEBUG BEGIN_STMT regValue_39 = regValue_38 | 1; # DEBUG regValue => regValue_39 # DEBUG BEGIN_STMT baseAddr_17->MCR ={v} regValue_39; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT return 0; } Lpi2c_Ip_MasterConfigFeatures (struct LPI2C_Type * baseAddr, const struct Lpi2c_Ip_MasterConfigType * userConfigPtr) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = userConfigPtr_6(D)->u32GlitchFilterSDA; LPI2C_Set_MasterGlitchFilterSDA (baseAddr_7(D), _1); # DEBUG BEGIN_STMT _2 = userConfigPtr_6(D)->u32GlitchFilterSCL; LPI2C_Set_MasterGlitchFilterSCL (baseAddr_7(D), _2); # DEBUG BEGIN_STMT _3 = userConfigPtr_6(D)->u32BusIdleTimeout; LPI2C_Set_MasterBusIdleTimeout (baseAddr_7(D), _3); # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_7(D) # DEBUG configuration => 1 # DEBUG INLINE_ENTRY LPI2C_Set_MasterPinLowTimeoutConfiguration # DEBUG BEGIN_STMT tmp_12 ={v} baseAddr_7(D)->MCFGR1; # DEBUG tmp => tmp_12 # DEBUG BEGIN_STMT tmp_13 = tmp_12 & 4294966271; # DEBUG tmp => tmp_13 # DEBUG BEGIN_STMT tmp_14 = tmp_13 | 1024; # DEBUG tmp => tmp_14 # DEBUG BEGIN_STMT baseAddr_7(D)->MCFGR1 ={v} tmp_14; # DEBUG baseAddr => NULL # DEBUG configuration => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT _4 = userConfigPtr_6(D)->u32PinLowTimeout; LPI2C_Set_MasterPinLowTimeout (baseAddr_7(D), _4); return; } Lpi2c_Ip_MasterSetBaudRateInit (uint32 instance, const Lpi2c_Ip_ModeType operatingMode, const struct Lpi2c_Ip_BaudRateType * baudRate) { uint32 regValue; uint32 regValue; Lpi2c_Ip_StatusType retStatus; const struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; _Bool _1; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG retStatus => 2 # DEBUG BEGIN_STMT master_6 = g_lpi2cMasterStatePtr[instance_5(D)]; # DEBUG master => master_6 # DEBUG BEGIN_STMT baseAddr_7 = g_lpi2cBase[instance_5(D)]; # DEBUG baseAddr => baseAddr_7 # DEBUG BEGIN_STMT _1 ={v} master_6->i2cIdle; if (_1 != 0) goto ; [47.77%] else goto ; [52.23%] [local count: 512926469]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_7 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterEnable # DEBUG BEGIN_STMT regValue_16 ={v} baseAddr_7->MCR; # DEBUG regValue => regValue_16 # DEBUG BEGIN_STMT regValue_17 = regValue_16 & 4294967294; # DEBUG regValue => regValue_17 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_17 # DEBUG BEGIN_STMT baseAddr_7->MCR ={v} regValue_17; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT Lpi2c_Ip_BaudRateConfig (baseAddr_7, baudRate_8(D)); # DEBUG BEGIN_STMT Lpi2c_Ip_HSBaudRateConfig (baseAddr_7, baudRate_8(D)); # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSetOperatingMode (instance_5(D), operatingMode_11(D)); # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_7 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_MasterEnable # DEBUG BEGIN_STMT regValue_13 ={v} baseAddr_7->MCR; # DEBUG regValue => regValue_13 # DEBUG BEGIN_STMT regValue_14 = regValue_13 & 4294967294; # DEBUG regValue => regValue_14 # DEBUG BEGIN_STMT regValue_15 = regValue_14 | 1; # DEBUG regValue => regValue_15 # DEBUG BEGIN_STMT baseAddr_7->MCR ={v} regValue_15; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG retStatus => 0 [local count: 1073741824]: # retStatus_2 = PHI <2(2), 0(3)> # DEBUG retStatus => retStatus_2 # DEBUG BEGIN_STMT return retStatus_2; } Lpi2c_Ip_MasterSetBaudRate (uint32 instance, Lpi2c_Ip_ModeType operatingMode, uint32 baudrate, uint32 inputClock) { uint32 regValue; uint32 regValue; Lpi2c_Ip_StatusType retStatus; uint32 dataVd; uint32 setHold; uint32 clkHi; uint32 clkLo; uint32 clkTotal; uint32 prescaler; uint32 minPrescaler; struct Lpi2c_Ip_BaudRateType baudRateParams; const struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; _Bool _1; long unsigned int _2; long unsigned int _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; long unsigned int _8; long unsigned int _9; long unsigned int _10; _11; long unsigned int _18; [local count: 571974014]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG minPrescaler => 0 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG retStatus => 2 # DEBUG BEGIN_STMT baseAddr_21 = g_lpi2cBase[instance_20(D)]; # DEBUG baseAddr => baseAddr_21 # DEBUG BEGIN_STMT master_22 = g_lpi2cMasterStatePtr[instance_20(D)]; # DEBUG master => master_22 # DEBUG BEGIN_STMT _1 ={v} master_22->i2cIdle; if (_1 != 0) goto ; [65.00%] else goto ; [35.00%] [local count: 371783108]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_21 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterEnable # DEBUG BEGIN_STMT regValue_47 ={v} baseAddr_21->MCR; # DEBUG regValue => regValue_47 # DEBUG BEGIN_STMT regValue_48 = regValue_47 & 4294967294; # DEBUG regValue => regValue_48 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_48 # DEBUG BEGIN_STMT baseAddr_21->MCR ={v} regValue_48; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT if (baudrate_23(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 185891554]: # DEBUG BEGIN_STMT _2 = inputClock_24(D) + 4294967295; _3 = baudrate_23(D) * 128; _4 = _2 / _3; minPrescaler_25 = _4 + 1; # DEBUG minPrescaler => minPrescaler_25 # DEBUG BEGIN_STMT # DEBUG prescaler => 0 goto ; [100.00%] [local count: 939524097]: # DEBUG BEGIN_STMT _5 = 1 << prescaler_12; if (_5 >= minPrescaler_25) goto ; [5.50%] else goto ; [94.50%] [local count: 887850271]: # DEBUG BEGIN_STMT prescaler_26 = prescaler_12 + 1; # DEBUG prescaler => prescaler_26 [local count: 1073741824]: # prescaler_12 = PHI <0(4), prescaler_26(6)> # DEBUG prescaler => prescaler_12 # DEBUG BEGIN_STMT if (prescaler_12 != 7) goto ; [87.50%] else goto ; [12.50%] [local count: 185891554]: # prescaler_49 = PHI # DEBUG BEGIN_STMT _6 = baudrate_23(D) << prescaler_49; _7 = _6 >> 1; _8 = _7 + inputClock_24(D); clkTotal_27 = _8 / _6; # DEBUG clkTotal => clkTotal_27 # DEBUG prescaler => prescaler_49 # DEBUG BEGIN_STMT if (clkTotal_27 > 128) goto ; [50.00%] else goto ; [50.00%] [local count: 278837331]: # clkTotal_13 = PHI # prescaler_28 = PHI # DEBUG prescaler => NULL # DEBUG clkTotal => clkTotal_13 # DEBUG BEGIN_STMT if (clkTotal_13 <= 1) goto ; [41.00%] else goto ; [59.00%] [local count: 257459802]: # prescaler_31 = PHI # clkTotal_34 = PHI # DEBUG clkTotal => NULL # DEBUG BEGIN_STMT _9 = clkTotal_34 + 4294967294; clkHi_29 = _9 >> 1; # DEBUG clkHi => clkHi_29 # DEBUG BEGIN_STMT _10 = clkTotal_34 - clkHi_29; clkLo_30 = _10 + 4294967294; # DEBUG clkHi => clkHi_29 # DEBUG clkLo => clkLo_30 # DEBUG BEGIN_STMT _18 = MAX_EXPR <1, clkHi_29>; [local count: 371783108]: # clkHi_14 = PHI <_18(10), 1(9)> # prescaler_33 = PHI # clkLo_37 = PHI # DEBUG clkLo => NULL # DEBUG clkHi => clkHi_14 # DEBUG BEGIN_STMT clkLo_17 = MAX_EXPR <3, clkLo_37>; # DEBUG clkLo => clkLo_17 # DEBUG BEGIN_STMT # DEBUG setHold => clkHi_14 # DEBUG BEGIN_STMT dataVd_36 = clkHi_14 >> 1; # DEBUG dataVd => dataVd_36 # DEBUG BEGIN_STMT setHold_32 = MAX_EXPR <2, clkHi_14>; # DEBUG setHold => setHold_32 # DEBUG BEGIN_STMT dataVd_35 = MAX_EXPR <1, dataVd_36>; # DEBUG dataVd => dataVd_35 # DEBUG BEGIN_STMT _11 = () prescaler_33; baudRateParams.prescaler = _11; # DEBUG BEGIN_STMT baudRateParams.dataValid = dataVd_35; # DEBUG BEGIN_STMT baudRateParams.setHold = setHold_32; # DEBUG BEGIN_STMT baudRateParams.clkHI = clkHi_14; # DEBUG BEGIN_STMT baudRateParams.clkLO = clkLo_17; # DEBUG BEGIN_STMT Lpi2c_Ip_BaudRateConfig (baseAddr_21, &baudRateParams); # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSetOperatingMode (instance_20(D), operatingMode_44(D)); # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_21 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_MasterEnable # DEBUG BEGIN_STMT regValue_50 ={v} baseAddr_21->MCR; # DEBUG regValue => regValue_50 # DEBUG BEGIN_STMT regValue_51 = regValue_50 & 4294967294; # DEBUG regValue => regValue_51 # DEBUG BEGIN_STMT regValue_52 = regValue_51 | 1; # DEBUG regValue => regValue_52 # DEBUG BEGIN_STMT baseAddr_21->MCR ={v} regValue_52; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG retStatus => 0 [local count: 571974014]: # retStatus_15 = PHI <2(2), 0(11)> # DEBUG retStatus => retStatus_15 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baudRateParams ={v} {CLOBBER}; return retStatus_15; } Lpi2c_Ip_HSBaudRateConfig (struct LPI2C_Type * baseAddr, const struct Lpi2c_Ip_BaudRateType * baudRate) { long unsigned int _1; unsigned char _2; long unsigned int _3; unsigned char _4; long unsigned int _5; unsigned char _6; long unsigned int _7; unsigned char _8; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = baudRate_10(D)->setHoldHS; _2 = (unsigned char) _1; LPI2C_Set_MasterDataValidDelayHS (baseAddr_11(D), _2); # DEBUG BEGIN_STMT _3 = baudRate_10(D)->dataValidHS; _4 = (unsigned char) _3; LPI2C_Set_MasterSetupHoldDelayHS (baseAddr_11(D), _4); # DEBUG BEGIN_STMT _5 = baudRate_10(D)->clkHIHS; _6 = (unsigned char) _5; LPI2C_Set_MasterClockHighPeriodHS (baseAddr_11(D), _6); # DEBUG BEGIN_STMT _7 = baudRate_10(D)->clkLOHS; _8 = (unsigned char) _7; LPI2C_Set_MasterClockLowPeriodHS (baseAddr_11(D), _8); return; } Lpi2c_Ip_BaudRateConfig (struct LPI2C_Type * baseAddr, const struct Lpi2c_Ip_BaudRateType * baudRate) { _1; long unsigned int _2; unsigned char _3; long unsigned int _4; unsigned char _5; long unsigned int _6; unsigned char _7; long unsigned int _8; unsigned char _9; [local count: 1073741824]: # DEBUG BEGIN_STMT _1 = baudRate_11(D)->prescaler; LPI2C_Set_MasterPrescaler (baseAddr_12(D), _1); # DEBUG BEGIN_STMT _2 = baudRate_11(D)->setHold; _3 = (unsigned char) _2; LPI2C_Set_MasterSetupHoldDelay (baseAddr_12(D), _3); # DEBUG BEGIN_STMT _4 = baudRate_11(D)->dataValid; _5 = (unsigned char) _4; LPI2C_Set_MasterDataValidDelay (baseAddr_12(D), _5); # DEBUG BEGIN_STMT _6 = baudRate_11(D)->clkHI; _7 = (unsigned char) _6; LPI2C_Set_MasterClockHighPeriod (baseAddr_12(D), _7); # DEBUG BEGIN_STMT _8 = baudRate_11(D)->clkLO; _9 = (unsigned char) _8; LPI2C_Set_MasterClockLowPeriod (baseAddr_12(D), _9); return; } Lpi2c_Ip_MasterReceive (uint32 instance) { uint32 tmp; uint32 regValue; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; long unsigned int _1; _Bool _2; void (*) (Lpi2c_Ip_MasterEventType, uint8) _3; unsigned char _4; short unsigned int _5; short unsigned int _6; long unsigned int _19; _Bool _20; long unsigned int _22; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_10 = g_lpi2cBase[instance_9(D)]; # DEBUG baseAddr => baseAddr_10 # DEBUG BEGIN_STMT master_11 = g_lpi2cMasterStatePtr[instance_9(D)]; # DEBUG master => master_11 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_10 # DEBUG INLINE_ENTRY LPI2C_Get_MasterReceiveDataReadyEvent # DEBUG BEGIN_STMT regValue_18 ={v} MEM[(const struct LPI2C_Type *)baseAddr_10].MSR; # DEBUG regValue => regValue_18 # DEBUG BEGIN_STMT _19 = regValue_18 >> 1; # DEBUG regValue => _19 & 1 # DEBUG BEGIN_STMT _20 = (_Bool) _19; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_20 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterGetReceivedData (baseAddr_10, master_11); # DEBUG BEGIN_STMT _1 = master_11->bufferSize; if (_1 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 116930485]: # DEBUG BEGIN_STMT _2 = master_11->sendStop; Lpi2c_Ip_MasterEndTransfer (baseAddr_10, master_11, _2, 0); # DEBUG BEGIN_STMT master_11->status ={v} 0; # DEBUG BEGIN_STMT _3 = master_11->masterCallback; if (_3 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 81851339]: # DEBUG BEGIN_STMT _4 = master_11->callbackParam; _3 (11, _4); goto ; [100.00%] [local count: 237404317]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_10 # DEBUG INLINE_ENTRY LPI2C_Get_MasterRxFIFOWatermark # DEBUG BEGIN_STMT tmp_21 ={v} MEM[(const struct LPI2C_Type *)baseAddr_10].MFCR; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT _22 = tmp_21 >> 16; tmp_23 = _22 & 3; # DEBUG tmp => tmp_23 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL if (_1 <= tmp_23) goto ; [33.00%] else goto ; [67.00%] [local count: 78343425]: # DEBUG BEGIN_STMT _5 = (short unsigned int) _1; _6 = _5 + 65535; LPI2C_Set_MasterRxFIFOWatermark (baseAddr_10, _6); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT Lpi2c_Ip_MasterCheckErrorEvents (baseAddr_10, master_11); return; } Lpi2c_Ip_MasterGetReceivedData (const struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 tmp; uint32 tmp; uint8 * _1; uint8 * _2; uint8 * _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; unsigned char _15; long unsigned int _17; short unsigned int _19; [local count: 114863532]: # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 958878293]: # DEBUG BEGIN_STMT _1 = master_10(D)->dataBuffer; # DEBUG baseAddr => baseAddr_9(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterRxData # DEBUG BEGIN_STMT tmp_14 ={v} baseAddr_9(D)->MRDR; # DEBUG tmp => tmp_14 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_14 & 255 # DEBUG BEGIN_STMT _15 = (unsigned char) tmp_14; # DEBUG baseAddr => NULL # DEBUG tmp => NULL *_1 = _15; # DEBUG BEGIN_STMT _2 = master_10(D)->dataBuffer; _3 = _2 + 1; master_10(D)->dataBuffer = _3; # DEBUG BEGIN_STMT _4 = master_10(D)->bufferSize; _5 = _4 + 4294967295; master_10(D)->bufferSize = _5; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterRxFIFOCount # DEBUG BEGIN_STMT tmp_16 ={v} baseAddr_9(D)->MFSR; # DEBUG tmp => tmp_16 # DEBUG BEGIN_STMT _17 = tmp_16 >> 16; tmp_18 = _17 & 7; # DEBUG tmp => tmp_18 # DEBUG BEGIN_STMT _19 = (short unsigned int) tmp_18; # DEBUG baseAddr => NULL # DEBUG tmp => NULL if (_19 != 0) goto ; [94.50%] else goto ; [5.50%] [local count: 1014686025]: _6 = master_10(D)->bufferSize; if (_6 != 0) goto ; [94.50%] else goto ; [5.50%] [local count: 114863532]: return; } Lpi2c_Ip_MasterSend (uint32 instance) { uint32 regValue; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; uint8 * _1; long unsigned int _2; _Bool _3; void (*) (Lpi2c_Ip_MasterEventType, uint8) _4; unsigned char _5; _Bool _18; unsigned char _19; unsigned char _20; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG masterCmdQueueEmpty => 0 # DEBUG BEGIN_STMT baseAddr_9 = g_lpi2cBase[instance_8(D)]; # DEBUG baseAddr => baseAddr_9 # DEBUG BEGIN_STMT master_10 = g_lpi2cMasterStatePtr[instance_8(D)]; # DEBUG master => master_10 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9 # DEBUG INLINE_ENTRY LPI2C_Get_MasterTransmitDataRequestEvent # DEBUG BEGIN_STMT regValue_11 ={v} MEM[(const struct LPI2C_Type *)baseAddr_9].MSR; # DEBUG regValue => regValue_11 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_11 & 1 # DEBUG BEGIN_STMT _18 = (_Bool) regValue_11; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_18 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG master => master_10 # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterCmdQueueEmpty # DEBUG BEGIN_STMT _19 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_10].cmdQueue.writeIdx; _20 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_10].cmdQueue.readIdx; # DEBUG master => NULL if (_19 != _20) goto ; [48.88%] else goto ; [51.12%] [local count: 274448410]: # DEBUG masterCmdQueueEmpty => 1 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = master_10->dataBuffer; if (_1 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 262422502]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSendQueuedCmd (baseAddr_9, master_10); # DEBUG masterCmdQueueEmpty => 0 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 192113887]: # DEBUG BEGIN_STMT _2 = master_10->bufferSize; if (_2 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 96056944]: # DEBUG BEGIN_STMT _3 = master_10->sendStop; Lpi2c_Ip_MasterEndTransfer (baseAddr_9, master_10, _3, 0); # DEBUG BEGIN_STMT master_10->status ={v} 0; # DEBUG BEGIN_STMT _4 = master_10->masterCallback; if (_4 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 67239860]: # DEBUG BEGIN_STMT _5 = master_10->callbackParam; _4 (11, _5); goto ; [100.00%] [local count: 96056944]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueData (baseAddr_9, master_10); [local count: 1073741824]: # DEBUG masterCmdQueueEmpty => NULL # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT Lpi2c_Ip_MasterCheckErrorEvents (baseAddr_9, master_10); return; } Lpi2c_Ip_MasterCheckErrorEvents (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 regValue; uint32 regValue; uint32 regValue; long unsigned int _11; _Bool _12; long unsigned int _14; _Bool _15; long unsigned int _17; _Bool _18; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterFIFOErrorEvent # DEBUG BEGIN_STMT regValue_10 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].MSR; # DEBUG regValue => regValue_10 # DEBUG BEGIN_STMT _11 = regValue_10 >> 12; # DEBUG regValue => _11 & 1 # DEBUG BEGIN_STMT _12 = (_Bool) _11; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_12 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT LPI2C_Get_MasterFIFOErrorEventHandler (baseAddr_5(D), master_6(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterArbitrationLostEvent # DEBUG BEGIN_STMT regValue_13 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].MSR; # DEBUG regValue => regValue_13 # DEBUG BEGIN_STMT _14 = regValue_13 >> 11; # DEBUG regValue => _14 & 1 # DEBUG BEGIN_STMT _15 = (_Bool) _14; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_15 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT LPI2C_Get_MasterArbitrationLostEventHandler (baseAddr_5(D), master_6(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterNACKDetectEvent # DEBUG BEGIN_STMT regValue_16 ={v} MEM[(const struct LPI2C_Type *)baseAddr_5(D)].MSR; # DEBUG regValue => regValue_16 # DEBUG BEGIN_STMT _17 = regValue_16 >> 10; # DEBUG regValue => _17 & 1 # DEBUG BEGIN_STMT _18 = (_Bool) _17; # DEBUG baseAddr => NULL # DEBUG regValue => NULL if (_18 != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT LPI2C_Get_MasterNACKDetectEventHandler (baseAddr_5(D), master_6(D)); [local count: 1073741824]: return; } LPI2C_Get_MasterArbitrationLostEventHandler (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { void (*) (Lpi2c_Ip_MasterEventType, uint8) _1; unsigned char _2; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_5(D) # DEBUG INLINE_ENTRY LPI2C_Clear_MasterArbitrationLostEvent # DEBUG BEGIN_STMT baseAddr_5(D)->MSR ={v} 2048; # DEBUG baseAddr => NULL # DEBUG BEGIN_STMT Lpi2c_Ip_MasterEndTransfer (baseAddr_5(D), master_6(D), 0, 1); # DEBUG BEGIN_STMT master_6(D)->status ={v} 6; # DEBUG BEGIN_STMT _1 = master_6(D)->masterCallback; if (_1 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619278]: # DEBUG BEGIN_STMT _2 = master_6(D)->callbackParam; _1 (11, _2); [local count: 1073741824]: return; } LPI2C_Get_MasterNACKDetectEventHandler (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { void (*) (Lpi2c_Ip_MasterEventType, uint8) _1; unsigned char _2; [local count: 1073741824]: # DEBUG BEGIN_STMT master_5(D)->highSpeedInProgress = 0; # DEBUG BEGIN_STMT master_5(D)->status ={v} 3; # DEBUG BEGIN_STMT Lpi2c_Ip_MasterEndTransfer (baseAddr_8(D), master_5(D), 0, 1); # DEBUG BEGIN_STMT _1 = master_5(D)->masterCallback; if (_1 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619278]: # DEBUG BEGIN_STMT _2 = master_5(D)->callbackParam; _1 (11, _2); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_8(D) # DEBUG INLINE_ENTRY LPI2C_Clear_MasterNACKDetectEvent # DEBUG BEGIN_STMT baseAddr_8(D)->MSR ={v} 1024; # DEBUG baseAddr => NULL return; } LPI2C_Get_MasterFIFOErrorEventHandler (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { _1; void (*) (Lpi2c_Ip_MasterEventType, uint8) _2; unsigned char _3; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_7(D) # DEBUG INLINE_ENTRY LPI2C_Clear_MasterFIFOErrorEvent # DEBUG BEGIN_STMT baseAddr_7(D)->MSR ={v} 4096; # DEBUG baseAddr => NULL # DEBUG BEGIN_STMT _1 = master_8(D)->operatingMode; if (_1 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 365072220]: # DEBUG BEGIN_STMT master_8(D)->highSpeedInProgress = 0; [local count: 1073741824]: # DEBUG BEGIN_STMT master_8(D)->status ={v} 1; # DEBUG BEGIN_STMT Lpi2c_Ip_MasterEndTransfer (baseAddr_7(D), master_8(D), 0, 1); # DEBUG BEGIN_STMT _2 = master_8(D)->masterCallback; if (_2 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 751619278]: # DEBUG BEGIN_STMT _3 = master_8(D)->callbackParam; _2 (11, _3); [local count: 1073741824]: return; } Lpi2c_Ip_SlaveHandleReceiveDataEvent (const struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_SlaveStateType * slave) { uint32 tmp; uint32 tmp; long unsigned int _1; void (*) (Lpi2c_Ip_SlaveEventType, uint8) _2; unsigned char _3; long unsigned int _4; uint8 * _5; uint8 * _6; uint8 * _7; long unsigned int _8; long unsigned int _9; unsigned char _22; [local count: 1073741823]: # DEBUG BEGIN_STMT _1 = slave_13(D)->bufferSize; if (_1 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870911]: # DEBUG BEGIN_STMT _2 = slave_13(D)->slaveCallback; if (_2 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 375809638]: # DEBUG BEGIN_STMT _3 = slave_13(D)->callbackParam; _2 (3, _3); [local count: 1073741824]: # DEBUG BEGIN_STMT _4 = slave_13(D)->bufferSize; if (_4 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT slave_13(D)->status = 5; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_15(D) # DEBUG INLINE_ENTRY LPI2C_Get_SlaveData # DEBUG BEGIN_STMT tmp_20 ={v} baseAddr_15(D)->SRDR; # DEBUG tmp => tmp_20 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_20 & 255 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _5 = slave_13(D)->dataBuffer; # DEBUG baseAddr => baseAddr_15(D) # DEBUG INLINE_ENTRY LPI2C_Get_SlaveData # DEBUG BEGIN_STMT tmp_21 ={v} baseAddr_15(D)->SRDR; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_21 & 255 # DEBUG BEGIN_STMT _22 = (unsigned char) tmp_21; # DEBUG baseAddr => NULL # DEBUG tmp => NULL *_5 = _22; # DEBUG BEGIN_STMT _6 = slave_13(D)->dataBuffer; _7 = _6 + 1; slave_13(D)->dataBuffer = _7; # DEBUG BEGIN_STMT _8 = slave_13(D)->bufferSize; _9 = _8 + 4294967295; slave_13(D)->bufferSize = _9; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG tmp => NULL return; } Lpi2c_Ip_SlaveHandleTransmitDataEvent (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_SlaveStateType * slave) { _Bool _1; long unsigned int _2; void (*) (Lpi2c_Ip_SlaveEventType, uint8) _3; unsigned char _4; long unsigned int _5; uint8 * _6; unsigned char _7; uint8 * _8; long unsigned int _9; long unsigned int _21; [local count: 1073741823]: # DEBUG BEGIN_STMT _1 = slave_14(D)->txUnderrunWarning; if (_1 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870911]: # DEBUG BEGIN_STMT slave_14(D)->status = 4; [local count: 1073741823]: # DEBUG BEGIN_STMT _2 = slave_14(D)->bufferSize; if (_2 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870911]: # DEBUG BEGIN_STMT _3 = slave_14(D)->slaveCallback; if (_3 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 375809638]: # DEBUG BEGIN_STMT _4 = slave_14(D)->callbackParam; _3 (4, _4); [local count: 1073741824]: # DEBUG BEGIN_STMT _5 = slave_14(D)->bufferSize; if (_5 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT slave_14(D)->txUnderrunWarning = 1; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_17(D) # DEBUG data => 255 # DEBUG INLINE_ENTRY LPI2C_Transmit_SlaveData # DEBUG BEGIN_STMT baseAddr_17(D)->STDR ={v} 255; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _6 = slave_14(D)->dataBuffer; _7 = *_6; # DEBUG baseAddr => baseAddr_17(D) # DEBUG data => _7 # DEBUG INLINE_ENTRY LPI2C_Transmit_SlaveData # DEBUG BEGIN_STMT _21 = (long unsigned int) _7; baseAddr_17(D)->STDR ={v} _21; # DEBUG baseAddr => NULL # DEBUG data => NULL # DEBUG BEGIN_STMT _8 = _6 + 1; slave_14(D)->dataBuffer = _8; # DEBUG BEGIN_STMT _9 = _5 + 4294967295; slave_14(D)->bufferSize = _9; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG data => NULL return; } Lpi2c_Ip_SlaveHandleAddressValidEvent (uint32 instance, const struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_SlaveStateType * slave) { uint32 tmp; uint32 tmp; unsigned int _1; void (*) (Lpi2c_Ip_SlaveEventType, uint8) _2; unsigned char _3; _4; struct LPI2C_Type * _5; void (*) (Lpi2c_Ip_SlaveEventType, uint8) _6; unsigned char _7; [local count: 1073741823]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_12(D) # DEBUG INLINE_ENTRY LPI2C_Get_SlaveReceivedAddr # DEBUG BEGIN_STMT tmp_21 ={v} baseAddr_12(D)->SASR; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT # DEBUG D#1 => tmp_21 & 2047 # DEBUG tmp => D#1 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG receivedAddr => (short unsigned int) D#1 # DEBUG BEGIN_STMT _1 = tmp_21 & 1; if (_1 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870911]: # DEBUG BEGIN_STMT slave_13(D)->direction = 0; # DEBUG BEGIN_STMT _2 = slave_13(D)->slaveCallback; if (_2 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 375809638]: # DEBUG BEGIN_STMT _3 = slave_13(D)->callbackParam; _2 (5, _3); [local count: 536870911]: # DEBUG BEGIN_STMT _4 = slave_13(D)->transferType; if (_4 == 1) goto ; [34.00%] else goto ; [66.00%] [local count: 182536110]: # DEBUG BEGIN_STMT _5 = g_lpi2cBase[instance_18(D)]; # DEBUG baseAddr => _5 # DEBUG interrupts => 1 # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveInt # DEBUG BEGIN_STMT tmp_22 ={v} _5->SIER; # DEBUG tmp => tmp_22 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_23 = tmp_22 | 1; # DEBUG tmp => tmp_23 # DEBUG BEGIN_STMT _5->SIER ={v} tmp_23; [local count: 536870911]: # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT slave_13(D)->txUnderrunWarning = 0; goto ; [100.00%] [local count: 536870911]: # DEBUG BEGIN_STMT slave_13(D)->direction = 1; # DEBUG BEGIN_STMT _6 = slave_13(D)->slaveCallback; if (_6 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 375809638]: # DEBUG BEGIN_STMT _7 = slave_13(D)->callbackParam; _6 (6, _7); [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT slave_13(D)->status = 2; return; } Lpi2c_Ip_MasterHandleReceiveDataReadyEvent (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 tmp; uint32 tmp; uint32 tmp; uint8 * _1; uint8 * _2; uint8 * _3; long unsigned int _4; long unsigned int _5; long unsigned int _6; long unsigned int _7; _Bool _8; void (*) (Lpi2c_Ip_MasterEventType, uint8) _9; unsigned char _10; short unsigned int _11; short unsigned int _12; unsigned char _26; long unsigned int _28; short unsigned int _30; long unsigned int _32; [local count: 114863532]: # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 958878293]: # DEBUG BEGIN_STMT _1 = master_17(D)->dataBuffer; # DEBUG baseAddr => baseAddr_16(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterRxData # DEBUG BEGIN_STMT tmp_25 ={v} MEM[(const struct LPI2C_Type *)baseAddr_16(D)].MRDR; # DEBUG tmp => tmp_25 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_25 & 255 # DEBUG BEGIN_STMT _26 = (unsigned char) tmp_25; # DEBUG baseAddr => NULL # DEBUG tmp => NULL *_1 = _26; # DEBUG BEGIN_STMT _2 = master_17(D)->dataBuffer; _3 = _2 + 1; master_17(D)->dataBuffer = _3; # DEBUG BEGIN_STMT _4 = master_17(D)->bufferSize; _5 = _4 + 4294967295; master_17(D)->bufferSize = _5; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_16(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterRxFIFOCount # DEBUG BEGIN_STMT tmp_27 ={v} MEM[(const struct LPI2C_Type *)baseAddr_16(D)].MFSR; # DEBUG tmp => tmp_27 # DEBUG BEGIN_STMT _28 = tmp_27 >> 16; tmp_29 = _28 & 7; # DEBUG tmp => tmp_29 # DEBUG BEGIN_STMT _30 = (short unsigned int) tmp_29; # DEBUG baseAddr => NULL # DEBUG tmp => NULL if (_30 != 0) goto ; [94.50%] else goto ; [5.50%] [local count: 1014686025]: _6 = master_17(D)->bufferSize; if (_6 != 0) goto ; [94.50%] else goto ; [5.50%] [local count: 114863532]: # DEBUG BEGIN_STMT _7 = master_17(D)->bufferSize; if (_7 == 0) goto ; [33.00%] else goto ; [67.00%] [local count: 37904965]: # DEBUG BEGIN_STMT _8 = master_17(D)->sendStop; Lpi2c_Ip_MasterEndTransfer (baseAddr_16(D), master_17(D), _8, 0); # DEBUG BEGIN_STMT master_17(D)->status ={v} 0; # DEBUG BEGIN_STMT _9 = master_17(D)->masterCallback; if (_9 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 26533476]: # DEBUG BEGIN_STMT _10 = master_17(D)->callbackParam; _9 (11, _10); goto ; [100.00%] [local count: 76958566]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_16(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterRxFIFOWatermark # DEBUG BEGIN_STMT tmp_31 ={v} MEM[(const struct LPI2C_Type *)baseAddr_16(D)].MFCR; # DEBUG tmp => tmp_31 # DEBUG BEGIN_STMT _32 = tmp_31 >> 16; tmp_33 = _32 & 3; # DEBUG tmp => tmp_33 # DEBUG BEGIN_STMT # DEBUG baseAddr => NULL # DEBUG tmp => NULL if (_7 <= tmp_33) goto ; [33.00%] else goto ; [67.00%] [local count: 25396327]: # DEBUG BEGIN_STMT _11 = (short unsigned int) _7; _12 = _11 + 65535; LPI2C_Set_MasterRxFIFOWatermark (baseAddr_16(D), _12); [local count: 114863532]: # DEBUG BEGIN_STMT return; } Lpi2c_Ip_MasterHandleTransmitDataRequest (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 tmp; uint8 * _1; _2; long unsigned int _3; _Bool _4; void (*) (Lpi2c_Ip_MasterEventType, uint8) _5; unsigned char _6; unsigned char _10; unsigned char _17; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG master => master_9(D) # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterCmdQueueEmpty # DEBUG BEGIN_STMT _10 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_9(D)].cmdQueue.writeIdx; _17 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_9(D)].cmdQueue.readIdx; # DEBUG master => NULL if (_10 != _17) goto ; [48.88%] else goto ; [51.12%] [local count: 524845004]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterSendQueuedCmd (baseAddr_11(D), master_9(D)); goto ; [100.00%] [local count: 548896821]: # DEBUG BEGIN_STMT _1 = master_9(D)->dataBuffer; if (_1 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 384227774]: _2 = master_9(D)->direction; if (_2 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 192113887]: # DEBUG BEGIN_STMT _3 = master_9(D)->bufferSize; if (_3 == 0) goto ; [50.00%] else goto ; [50.00%] [local count: 96056944]: # DEBUG BEGIN_STMT _4 = master_9(D)->sendStop; Lpi2c_Ip_MasterEndTransfer (baseAddr_11(D), master_9(D), _4, 0); # DEBUG BEGIN_STMT master_9(D)->status ={v} 0; # DEBUG BEGIN_STMT _5 = master_9(D)->masterCallback; if (_5 != 0B) goto ; [70.00%] else goto ; [30.00%] [local count: 67239860]: # DEBUG BEGIN_STMT _6 = master_9(D)->callbackParam; _5 (11, _6); goto ; [100.00%] [local count: 96056944]: # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueData (baseAddr_11(D), master_9(D)); goto ; [100.00%] [local count: 356782933]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_11(D) # DEBUG interrupts => 1 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterInt # DEBUG BEGIN_STMT tmp_18 ={v} baseAddr_11(D)->MIER; # DEBUG tmp => tmp_18 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_19 = tmp_18 & 4294967294; # DEBUG tmp => tmp_19 # DEBUG BEGIN_STMT baseAddr_11(D)->MIER ={v} tmp_19; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL return; } Lpi2c_Ip_SlaveSetOperatingMode (uint32 instance, Lpi2c_Ip_ModeType operatingMode) { boolean bHighSpeedMode; struct Lpi2c_Ip_SlaveStateType * slave; struct LPI2C_Type * baseAddr; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG bHighSpeedMode => 0 # DEBUG BEGIN_STMT baseAddr_4 = g_lpi2cBase[instance_3(D)]; # DEBUG baseAddr => baseAddr_4 # DEBUG BEGIN_STMT slave_5 = g_lpi2cSlaveStatePtr[instance_3(D)]; # DEBUG slave => slave_5 # DEBUG BEGIN_STMT Lpi2c_Ip_SlaveConfigureNormalMode (baseAddr_4); # DEBUG BEGIN_STMT if (operatingMode_7(D) == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 365072220]: # DEBUG BEGIN_STMT # DEBUG bHighSpeedMode => 1 [local count: 1073741824]: # bHighSpeedMode_1 = PHI <0(2), 1(3)> # DEBUG bHighSpeedMode => bHighSpeedMode_1 # DEBUG BEGIN_STMT LPI2C_Set_SlaveHighSpeedModeDetect (baseAddr_4, bHighSpeedMode_1); # DEBUG BEGIN_STMT slave_5->operatingMode = operatingMode_7(D); return; } Lpi2c_Ip_SlaveConfigureNormalMode (struct LPI2C_Type * baseAddr) { uint32 regValue; uint32 regValue; uint32 regValue; uint32 regValue; uint32 regValue; uint32 regValue; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG nack_config => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveIgnoreNACK # DEBUG BEGIN_STMT regValue_16 ={v} baseAddr_2(D)->SCFGR1; # DEBUG regValue => regValue_16 # DEBUG BEGIN_STMT regValue_17 = regValue_16 & 4294963199; # DEBUG regValue => regValue_17 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_17 # DEBUG BEGIN_STMT baseAddr_2(D)->SCFGR1 ={v} regValue_17; # DEBUG baseAddr => NULL # DEBUG nack_config => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG nack => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveTransmitNACK # DEBUG BEGIN_STMT regValue_14 ={v} baseAddr_2(D)->STAR; # DEBUG regValue => regValue_14 # DEBUG BEGIN_STMT regValue_15 = regValue_14 & 4294967294; # DEBUG regValue => regValue_15 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_15 # DEBUG BEGIN_STMT baseAddr_2(D)->STAR ={v} regValue_15; # DEBUG baseAddr => NULL # DEBUG nack => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveACKStall # DEBUG BEGIN_STMT regValue_12 ={v} baseAddr_2(D)->SCFGR1; # DEBUG regValue => regValue_12 # DEBUG BEGIN_STMT regValue_13 = regValue_12 & 4294967287; # DEBUG regValue => regValue_13 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_13 # DEBUG BEGIN_STMT baseAddr_2(D)->SCFGR1 ={v} regValue_13; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveTXDStall # DEBUG BEGIN_STMT regValue_9 ={v} baseAddr_2(D)->SCFGR1; # DEBUG regValue => regValue_9 # DEBUG BEGIN_STMT regValue_10 = regValue_9 & 4294967291; # DEBUG regValue => regValue_10 # DEBUG BEGIN_STMT regValue_11 = regValue_10 | 4; # DEBUG regValue => regValue_11 # DEBUG BEGIN_STMT baseAddr_2(D)->SCFGR1 ={v} regValue_11; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveRXStall # DEBUG BEGIN_STMT regValue_6 ={v} baseAddr_2(D)->SCFGR1; # DEBUG regValue => regValue_6 # DEBUG BEGIN_STMT regValue_7 = regValue_6 & 4294967293; # DEBUG regValue => regValue_7 # DEBUG BEGIN_STMT regValue_8 = regValue_7 | 2; # DEBUG regValue => regValue_8 # DEBUG BEGIN_STMT baseAddr_2(D)->SCFGR1 ={v} regValue_8; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_2(D) # DEBUG enable => 1 # DEBUG INLINE_ENTRY LPI2C_Set_SlaveAddrStall # DEBUG BEGIN_STMT regValue_3 ={v} baseAddr_2(D)->SCFGR1; # DEBUG regValue => regValue_3 # DEBUG BEGIN_STMT regValue_4 = regValue_3 & 4294967294; # DEBUG regValue => regValue_4 # DEBUG BEGIN_STMT regValue_5 = regValue_4 | 1; # DEBUG regValue => regValue_5 # DEBUG BEGIN_STMT baseAddr_2(D)->SCFGR1 ={v} regValue_5; # DEBUG baseAddr => NULL # DEBUG enable => NULL # DEBUG regValue => NULL return; } Lpi2c_Ip_MasterSetOperatingMode (uint32 instance, Lpi2c_Ip_ModeType operatingMode) { uint32 tmp; uint32 regValue; struct Lpi2c_Ip_MasterStateType * master; struct LPI2C_Type * baseAddr; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT baseAddr_3 = g_lpi2cBase[instance_2(D)]; # DEBUG baseAddr => baseAddr_3 # DEBUG BEGIN_STMT master_4 = g_lpi2cMasterStatePtr[instance_2(D)]; # DEBUG master => master_4 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_3 # DEBUG configuration => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterPinConfig # DEBUG BEGIN_STMT tmp_9 ={v} baseAddr_3->MCFGR1; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT tmp_10 = tmp_9 & 4177526783; # DEBUG tmp => tmp_10 # DEBUG BEGIN_STMT # DEBUG tmp => tmp_10 # DEBUG BEGIN_STMT baseAddr_3->MCFGR1 ={v} tmp_10; # DEBUG baseAddr => NULL # DEBUG configuration => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_3 # DEBUG configuration => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterNACKConfig # DEBUG BEGIN_STMT regValue_7 ={v} baseAddr_3->MCFGR1; # DEBUG regValue => regValue_7 # DEBUG BEGIN_STMT regValue_8 = regValue_7 & 4294966783; # DEBUG regValue => regValue_8 # DEBUG BEGIN_STMT # DEBUG regValue => regValue_8 # DEBUG BEGIN_STMT baseAddr_3->MCFGR1 ={v} regValue_8; # DEBUG baseAddr => NULL # DEBUG configuration => NULL # DEBUG regValue => NULL # DEBUG BEGIN_STMT master_4->operatingMode = operatingMode_5(D); return; } Lpi2c_Ip_MasterEndTransfer (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master, boolean sendStop, boolean resetFIFO) { uint32 tmp; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG interrupts => 15363 # DEBUG enable => 0 # DEBUG INLINE_ENTRY LPI2C_Set_MasterInt # DEBUG BEGIN_STMT tmp_14 ={v} baseAddr_4(D)->MIER; # DEBUG tmp => tmp_14 # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT tmp_15 = tmp_14 & 4294951932; # DEBUG tmp => tmp_15 # DEBUG BEGIN_STMT baseAddr_4(D)->MIER ={v} tmp_15; # DEBUG baseAddr => NULL # DEBUG interrupts => NULL # DEBUG enable => NULL # DEBUG tmp => NULL # DEBUG BEGIN_STMT if (resetFIFO_5(D) != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 354334802]: # DEBUG BEGIN_STMT LPI2C_Reset_MasterTxFIFOCmd (baseAddr_4(D)); # DEBUG BEGIN_STMT LPI2C_Reset_MasterRxFIFOCmd (baseAddr_4(D)); [local count: 1073741824]: # DEBUG BEGIN_STMT if (sendStop_8(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_4(D) # DEBUG cmd => 2 # DEBUG data => 0 # DEBUG INLINE_ENTRY LPI2C_Cmd_MasterTransmit # DEBUG BEGIN_STMT baseAddr_4(D)->MTDR ={v} 512; # DEBUG baseAddr => NULL # DEBUG cmd => NULL # DEBUG data => NULL # DEBUG BEGIN_STMT master_9(D)->highSpeedInProgress = 0; [local count: 1073741824]: # DEBUG BEGIN_STMT master_9(D)->dataBuffer = 0B; # DEBUG BEGIN_STMT master_9(D)->bufferSize = 0; # DEBUG BEGIN_STMT master_9(D)->i2cIdle ={v} 1; return; } Lpi2c_Ip_MasterQueueData (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 tmp; uint32 tmp; uint32 tmp; uint16 txFIFOCount; uint8 * _1; unsigned char _2; uint8 * _3; long unsigned int _4; long unsigned int _5; unsigned char _12; unsigned char _15; short unsigned int _19; short unsigned int _22; short unsigned int _25; long unsigned int _26; [local count: 337833918]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_10(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOCount # DEBUG BEGIN_STMT tmp_20 ={v} MEM[(const struct LPI2C_Type *)baseAddr_10(D)].MFSR; # DEBUG tmp => tmp_20 # DEBUG BEGIN_STMT tmp_21 = tmp_20 & 7; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT _22 = (short unsigned int) tmp_21; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFIFOCount => _22 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_10(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOSize # DEBUG BEGIN_STMT tmp_16 ={v} MEM[(const struct LPI2C_Type *)baseAddr_10(D)].PARAM; # DEBUG tmp => tmp_16 # DEBUG BEGIN_STMT tmp_17 = tmp_16 & 15; # DEBUG tmp => tmp_17 # DEBUG BEGIN_STMT tmp_18 = 1 << tmp_17; # DEBUG tmp => tmp_18 # DEBUG BEGIN_STMT _19 = (short unsigned int) tmp_18; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFifoSize => _19 # DEBUG BEGIN_STMT # DEBUG master => master_11(D) # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterCmdQueueEmpty # DEBUG BEGIN_STMT _12 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_11(D)].cmdQueue.writeIdx; _15 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_11(D)].cmdQueue.readIdx; # DEBUG master => NULL if (_12 == _15) goto ; [34.00%] else goto ; [66.00%] [local count: 114863532]: goto ; [100.00%] [local count: 958878294]: # DEBUG BEGIN_STMT _1 = master_11(D)->dataBuffer; _2 = *_1; # DEBUG baseAddr => baseAddr_10(D) # DEBUG cmd => 0 # DEBUG data => _2 # DEBUG INLINE_ENTRY LPI2C_Cmd_MasterTransmit # DEBUG BEGIN_STMT _26 = (long unsigned int) _2; baseAddr_10(D)->MTDR ={v} _26; # DEBUG baseAddr => NULL # DEBUG cmd => NULL # DEBUG data => NULL # DEBUG BEGIN_STMT _3 = _1 + 1; master_11(D)->dataBuffer = _3; # DEBUG BEGIN_STMT _4 = _5 + 4294967295; master_11(D)->bufferSize = _4; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_10(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOCount # DEBUG BEGIN_STMT tmp_23 ={v} MEM[(const struct LPI2C_Type *)baseAddr_10(D)].MFSR; # DEBUG tmp => tmp_23 # DEBUG BEGIN_STMT tmp_24 = tmp_23 & 7; # DEBUG tmp => tmp_24 # DEBUG BEGIN_STMT _25 = (short unsigned int) tmp_24; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFIFOCount => _25 [local count: 1073741824]: # txFIFOCount_6 = PHI <_25(3), _22(7)> # DEBUG txFIFOCount => txFIFOCount_6 # DEBUG BEGIN_STMT _5 = master_11(D)->bufferSize; if (_5 != 0) goto ; [94.50%] else goto ; [5.50%] [local count: 1014686025]: if (txFIFOCount_6 < _19) goto ; [94.50%] else goto ; [5.50%] [local count: 337833918]: return; } Lpi2c_Ip_MasterSendAddress (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master, boolean receive) { Lpi2c_Ip_MasterCommandType startCommand; uint8 addrByte; _1; _Bool _2; unsigned char _3; _Bool _4; _Bool _5; short unsigned int _6; short unsigned int _7; unsigned char _8; unsigned char _9; short unsigned int _10; short unsigned int _11; short unsigned int _12; unsigned char _13; unsigned char _14; short unsigned int _15; unsigned char _16; unsigned char _17; unsigned char _18; [local count: 1073741823]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT _1 = master_23(D)->operatingMode; if (_1 == 3) goto ; [34.00%] else goto ; [66.00%] [local count: 365072220]: _2 = master_23(D)->highSpeedInProgress; if (_2 != 0) goto ; [67.00%] else goto ; [33.00%] [local count: 120473832]: # DEBUG BEGIN_STMT _3 = master_23(D)->masterCode; Lpi2c_Ip_MasterQueueCmd (baseAddr_24(D), master_23(D), 5, _3); # DEBUG BEGIN_STMT master_23(D)->highSpeedInProgress = 1; [local count: 1073741824]: # DEBUG BEGIN_STMT _4 = master_23(D)->highSpeedInProgress; if (_4 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG startCommand => 4 [local count: 1073741824]: # startCommand_19 = PHI <6(5), 4(6)> # DEBUG startCommand => startCommand_19 # DEBUG BEGIN_STMT _5 = master_23(D)->is10bitAddr; if (_5 != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _6 = master_23(D)->slaveAddress; _7 = _6 >> 7; _8 = (unsigned char) _7; _9 = _8 & 6; addrByte_30 = _9 + 240; # DEBUG addrByte => addrByte_30 # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueCmd (baseAddr_24(D), master_23(D), startCommand_19, addrByte_30); # DEBUG BEGIN_STMT _10 = master_23(D)->slaveAddress; addrByte_32 = (uint8) _10; # DEBUG addrByte => addrByte_32 # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueCmd (baseAddr_24(D), master_23(D), 0, addrByte_32); # DEBUG BEGIN_STMT if (receive_27(D) != 0) goto ; [33.00%] else goto ; [67.00%] [local count: 177167401]: # DEBUG BEGIN_STMT _11 = master_23(D)->slaveAddress; _12 = _11 >> 7; _13 = (unsigned char) _12; _14 = _13 & 6; addrByte_34 = _14 + 241; # DEBUG addrByte => addrByte_34 # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueCmd (baseAddr_24(D), master_23(D), startCommand_19, addrByte_34); goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _15 = master_23(D)->slaveAddress; _16 = (unsigned char) _15; _17 = _16 << 1; _18 = (unsigned char) receive_27(D); addrByte_28 = _17 + _18; # DEBUG addrByte => addrByte_28 # DEBUG BEGIN_STMT Lpi2c_Ip_MasterQueueCmd (baseAddr_24(D), master_23(D), startCommand_19, addrByte_28); [local count: 1073741824]: return; } Lpi2c_Ip_MasterSendQueuedCmd (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master) { uint32 tmp; uint32 tmp; uint32 tmp; uint16 txFIFOCount; int _1; _2; unsigned char _3; unsigned char _4; unsigned char _10; short unsigned int _16; short unsigned int _19; short unsigned int _22; long unsigned int _23; long unsigned int _24; long unsigned int _25; long unsigned int _26; unsigned char _27; unsigned char _28; unsigned char _29; [local count: 114863532]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOCount # DEBUG BEGIN_STMT tmp_17 ={v} MEM[(const struct LPI2C_Type *)baseAddr_9(D)].MFSR; # DEBUG tmp => tmp_17 # DEBUG BEGIN_STMT tmp_18 = tmp_17 & 7; # DEBUG tmp => tmp_18 # DEBUG BEGIN_STMT _19 = (short unsigned int) tmp_18; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFIFOCount => _19 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOSize # DEBUG BEGIN_STMT tmp_14 ={v} MEM[(const struct LPI2C_Type *)baseAddr_9(D)].PARAM; # DEBUG tmp => tmp_14 # DEBUG BEGIN_STMT tmp_12 = tmp_14 & 15; # DEBUG tmp => tmp_12 # DEBUG BEGIN_STMT tmp_15 = 1 << tmp_12; # DEBUG tmp => tmp_15 # DEBUG BEGIN_STMT _16 = (short unsigned int) tmp_15; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFifoSize => _16 # DEBUG BEGIN_STMT goto ; [100.00%] [local count: 958878293]: # DEBUG BEGIN_STMT _1 = (int) _28; _2 = master_11(D)->cmdQueue.cmd[_1]; _3 = master_11(D)->cmdQueue.data[_1]; # DEBUG baseAddr => baseAddr_9(D) # DEBUG cmd => _2 # DEBUG data => _3 # DEBUG INLINE_ENTRY LPI2C_Cmd_MasterTransmit # DEBUG BEGIN_STMT _23 = (long unsigned int) _2; _24 = _23 << 8; _25 = (long unsigned int) _3; _26 = _24 + _25; baseAddr_9(D)->MTDR ={v} _26; # DEBUG baseAddr => NULL # DEBUG cmd => NULL # DEBUG data => NULL # DEBUG BEGIN_STMT _4 = _28 + 1; master_11(D)->cmdQueue.readIdx = _4; # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_9(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOCount # DEBUG BEGIN_STMT tmp_20 ={v} MEM[(const struct LPI2C_Type *)baseAddr_9(D)].MFSR; # DEBUG tmp => tmp_20 # DEBUG BEGIN_STMT tmp_21 = tmp_20 & 7; # DEBUG tmp => tmp_21 # DEBUG BEGIN_STMT _22 = (short unsigned int) tmp_21; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFIFOCount => _22 [local count: 1073741824]: # txFIFOCount_5 = PHI <_19(2), _22(3)> # DEBUG txFIFOCount => txFIFOCount_5 # DEBUG BEGIN_STMT # DEBUG master => master_11(D) # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterCmdQueueEmpty # DEBUG BEGIN_STMT _27 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_11(D)].cmdQueue.writeIdx; _28 = MEM[(const struct Lpi2c_Ip_MasterStateType *)master_11(D)].cmdQueue.readIdx; # DEBUG master => NULL if (_27 != _28) goto ; [94.50%] else goto ; [5.50%] [local count: 1014686025]: if (txFIFOCount_5 < _16) goto ; [94.50%] else goto ; [5.50%] [local count: 114863532]: # _29 = PHI <_27(5), _27(4)> # _10 = PHI <_28(5), _28(4)> # DEBUG BEGIN_STMT # DEBUG master => master_11(D) # DEBUG INLINE_ENTRY NULL # DEBUG BEGIN_STMT # DEBUG master => NULL if (_10 == _29) goto ; [34.00%] else goto ; [66.00%] [local count: 39053601]: # DEBUG BEGIN_STMT # DEBUG master => master_11(D) # DEBUG INLINE_ENTRY Lpi2c_Ip_MasterResetQueue # DEBUG BEGIN_STMT master_11(D)->cmdQueue.readIdx = 0; # DEBUG BEGIN_STMT master_11(D)->cmdQueue.writeIdx = 0; [local count: 114863532]: # DEBUG master => NULL return; } Lpi2c_Ip_MasterQueueCmd (struct LPI2C_Type * baseAddr, struct Lpi2c_Ip_MasterStateType * master, Lpi2c_Ip_MasterCommandType cmd, uint8 data) { uint32 tmp; uint32 tmp; unsigned char _1; int _2; unsigned char _3; short unsigned int _16; short unsigned int _19; long unsigned int _20; long unsigned int _21; long unsigned int _22; long unsigned int _23; [local count: 1073741824]: # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOCount # DEBUG BEGIN_STMT tmp_17 ={v} MEM[(const struct LPI2C_Type *)baseAddr_6(D)].MFSR; # DEBUG tmp => tmp_17 # DEBUG BEGIN_STMT tmp_18 = tmp_17 & 7; # DEBUG tmp => tmp_18 # DEBUG BEGIN_STMT _19 = (short unsigned int) tmp_18; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFIFOCount => _19 # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6(D) # DEBUG INLINE_ENTRY LPI2C_Get_MasterTxFIFOSize # DEBUG BEGIN_STMT tmp_13 ={v} MEM[(const struct LPI2C_Type *)baseAddr_6(D)].PARAM; # DEBUG tmp => tmp_13 # DEBUG BEGIN_STMT tmp_14 = tmp_13 & 15; # DEBUG tmp => tmp_14 # DEBUG BEGIN_STMT tmp_15 = 1 << tmp_14; # DEBUG tmp => tmp_15 # DEBUG BEGIN_STMT _16 = (short unsigned int) tmp_15; # DEBUG baseAddr => NULL # DEBUG tmp => NULL # DEBUG txFIFOSize => _16 # DEBUG BEGIN_STMT if (_16 > _19) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: # DEBUG BEGIN_STMT # DEBUG baseAddr => baseAddr_6(D) # DEBUG cmd => cmd_8(D) # DEBUG data => data_10(D) # DEBUG INLINE_ENTRY LPI2C_Cmd_MasterTransmit # DEBUG BEGIN_STMT _20 = (long unsigned int) cmd_8(D); _21 = _20 << 8; _22 = (long unsigned int) data_10(D); _23 = _21 + _22; baseAddr_6(D)->MTDR ={v} _23; goto ; [100.00%] [local count: 536870913]: # DEBUG BEGIN_STMT _1 = master_7(D)->cmdQueue.writeIdx; _2 = (int) _1; master_7(D)->cmdQueue.cmd[_2] = cmd_8(D); # DEBUG BEGIN_STMT master_7(D)->cmdQueue.data[_2] = data_10(D); # DEBUG BEGIN_STMT _3 = _1 + 1; master_7(D)->cmdQueue.writeIdx = _3; [local count: 1073741824]: # DEBUG baseAddr => NULL # DEBUG cmd => NULL # DEBUG data => NULL return; } LPI2C_Set_SlaveAddr0 (struct LPI2C_Type * baseAddr, uint16 addr) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->SAMR; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4294965249; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) addr_8(D); _2 = _1 << 1; _3 = _2 & 2046; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->SAMR ={v} tmp_9; return; } LPI2C_Set_SlaveHighSpeedModeDetect (struct LPI2C_Type * baseAddr, boolean enable) { uint32 regValue; long unsigned int iftmp.6_1; [local count: 1073741824]: # DEBUG BEGIN_STMT regValue_4 ={v} baseAddr_3(D)->SCFGR1; # DEBUG regValue => regValue_4 # DEBUG BEGIN_STMT regValue_5 = regValue_4 & 4294959103; # DEBUG regValue => regValue_5 # DEBUG BEGIN_STMT if (enable_6(D) != 0) goto ; [50.00%] else goto ; [50.00%] [local count: 536870913]: [local count: 1073741824]: # iftmp.6_1 = PHI <8192(2), 0(3)> regValue_7 = iftmp.6_1 | regValue_5; # DEBUG regValue => regValue_7 # DEBUG BEGIN_STMT baseAddr_3(D)->SCFGR1 ={v} regValue_7; return; } LPI2C_Set_MasterRxFIFOWatermark (struct LPI2C_Type * baseAddr, uint16 value) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->MFCR; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4294770687; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) value_8(D); _2 = _1 << 16; _3 = _2 & 196608; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->MFCR ={v} tmp_9; return; } LPI2C_Set_MasterClockLowPeriodHS (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; unsigned char _9; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_4 ={v} baseAddr_3(D)->MCCR1; # DEBUG tmp => tmp_4 # DEBUG BEGIN_STMT tmp_5 = tmp_4 & 4294967232; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT _9 = value_6(D) & 63; _1 = (long unsigned int) _9; tmp_7 = _1 | tmp_5; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT baseAddr_3(D)->MCCR1 ={v} tmp_7; return; } LPI2C_Set_MasterClockHighPeriodHS (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->MCCR1; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4294951167; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) value_8(D); _2 = _1 << 8; _3 = _2 & 16128; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->MCCR1 ={v} tmp_9; return; } LPI2C_Set_MasterSetupHoldDelayHS (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->MCCR1; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4290838527; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) value_8(D); _2 = _1 << 16; _3 = _2 & 4128768; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->MCCR1 ={v} tmp_9; return; } LPI2C_Set_MasterDataValidDelayHS (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->MCCR1; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 3238002687; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) value_8(D); _2 = _1 << 24; _3 = _2 & 1056964608; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->MCCR1 ={v} tmp_9; return; } LPI2C_Set_MasterClockLowPeriod (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; unsigned char _9; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_4 ={v} baseAddr_3(D)->MCCR0; # DEBUG tmp => tmp_4 # DEBUG BEGIN_STMT tmp_5 = tmp_4 & 4294967232; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT _9 = value_6(D) & 63; _1 = (long unsigned int) _9; tmp_7 = _1 | tmp_5; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT baseAddr_3(D)->MCCR0 ={v} tmp_7; return; } LPI2C_Set_MasterSetupHoldDelay (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->MCCR0; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4290838527; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) value_8(D); _2 = _1 << 16; _3 = _2 & 4128768; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->MCCR0 ={v} tmp_9; return; } LPI2C_Set_MasterDataValidDelay (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->MCCR0; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 3238002687; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) value_8(D); _2 = _1 << 24; _3 = _2 & 1056964608; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->MCCR0 ={v} tmp_9; return; } LPI2C_Set_MasterClockHighPeriod (struct LPI2C_Type * baseAddr, uint8 value) { uint32 tmp; long unsigned int _1; long unsigned int _2; long unsigned int _3; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_6 ={v} baseAddr_5(D)->MCCR0; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT tmp_7 = tmp_6 & 4294951167; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT _1 = (long unsigned int) value_8(D); _2 = _1 << 8; _3 = _2 & 16128; tmp_9 = _3 | tmp_7; # DEBUG tmp => tmp_9 # DEBUG BEGIN_STMT baseAddr_5(D)->MCCR0 ={v} tmp_9; return; } LPI2C_Set_MasterPrescaler (struct LPI2C_Type * baseAddr, Lpi2c_Ip_MasterPrescalerType prescaler) { uint32 tmp; long unsigned int _1; _9; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_4 ={v} baseAddr_3(D)->MCFGR1; # DEBUG tmp => tmp_4 # DEBUG BEGIN_STMT tmp_5 = tmp_4 & 4294967288; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT _9 = prescaler_6(D) & 7; _1 = (long unsigned int) _9; tmp_7 = _1 | tmp_5; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT baseAddr_3(D)->MCFGR1 ={v} tmp_7; return; } LPI2C_Set_MasterBusIdleTimeout (struct LPI2C_Type * baseAddr, uint32 u32Timeout) { uint32 tmp; long unsigned int _1; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_4 ={v} baseAddr_3(D)->MCFGR2; # DEBUG tmp => tmp_4 # DEBUG BEGIN_STMT tmp_5 = tmp_4 & 4294963200; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT _1 = u32Timeout_6(D) & 4095; tmp_7 = _1 | tmp_5; # DEBUG tmp => tmp_7 # DEBUG BEGIN_STMT baseAddr_3(D)->MCFGR2 ={v} tmp_7; return; } LPI2C_Set_MasterPinLowTimeout (struct LPI2C_Type * baseAddr, uint32 u32Timeout) { uint32 tmp; long unsigned int _1; long unsigned int _2; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_5 ={v} baseAddr_4(D)->MCFGR3; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT tmp_6 = tmp_5 & 4293918975; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT _1 = u32Timeout_7(D) << 8; _2 = _1 & 1048320; tmp_8 = _2 | tmp_6; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT baseAddr_4(D)->MCFGR3 ={v} tmp_8; return; } LPI2C_Set_SlaveGlitchFilterSCL (struct LPI2C_Type * baseAddr, uint32 cycles) { uint32 tmp; long unsigned int _1; long unsigned int _2; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_5 ={v} baseAddr_4(D)->SCFGR2; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT tmp_6 = tmp_5 & 4293984255; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT _1 = cycles_7(D) << 16; _2 = _1 & 983040; tmp_8 = _2 | tmp_6; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT baseAddr_4(D)->SCFGR2 ={v} tmp_8; return; } LPI2C_Set_SlaveGlitchFilterSDA (struct LPI2C_Type * baseAddr, uint32 cycles) { uint32 tmp; long unsigned int _1; long unsigned int _2; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_5 ={v} baseAddr_4(D)->SCFGR2; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT tmp_6 = tmp_5 & 4043309055; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT _1 = cycles_7(D) << 24; _2 = _1 & 251658240; tmp_8 = _2 | tmp_6; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT baseAddr_4(D)->SCFGR2 ={v} tmp_8; return; } LPI2C_Set_MasterGlitchFilterSCL (struct LPI2C_Type * baseAddr, uint32 cycles) { uint32 tmp; long unsigned int _1; long unsigned int _2; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_5 ={v} baseAddr_4(D)->MCFGR2; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT tmp_6 = tmp_5 & 4293984255; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT _1 = cycles_7(D) << 16; _2 = _1 & 983040; tmp_8 = _2 | tmp_6; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT baseAddr_4(D)->MCFGR2 ={v} tmp_8; return; } LPI2C_Set_MasterGlitchFilterSDA (struct LPI2C_Type * baseAddr, uint32 cycles) { uint32 tmp; long unsigned int _1; long unsigned int _2; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_5 ={v} baseAddr_4(D)->MCFGR2; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT tmp_6 = tmp_5 & 4043309055; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT _1 = cycles_7(D) << 24; _2 = _1 & 251658240; tmp_8 = _2 | tmp_6; # DEBUG tmp => tmp_8 # DEBUG BEGIN_STMT baseAddr_4(D)->MCFGR2 ={v} tmp_8; return; } LPI2C_Reset_MasterTxFIFOCmd (struct LPI2C_Type * baseAddr) { uint32 regValue; [local count: 1073741824]: # DEBUG BEGIN_STMT regValue_3 ={v} baseAddr_2(D)->MCR; # DEBUG regValue => regValue_3 # DEBUG BEGIN_STMT regValue_4 = regValue_3 & 4294967039; # DEBUG regValue => regValue_4 # DEBUG BEGIN_STMT regValue_5 = regValue_4 | 256; # DEBUG regValue => regValue_5 # DEBUG BEGIN_STMT baseAddr_2(D)->MCR ={v} regValue_5; return; } LPI2C_Reset_MasterRxFIFOCmd (struct LPI2C_Type * baseAddr) { uint32 regValue; [local count: 1073741824]: # DEBUG BEGIN_STMT regValue_3 ={v} baseAddr_2(D)->MCR; # DEBUG regValue => regValue_3 # DEBUG BEGIN_STMT regValue_4 = regValue_3 & 4294966783; # DEBUG regValue => regValue_4 # DEBUG BEGIN_STMT regValue_5 = regValue_4 | 512; # DEBUG regValue => regValue_5 # DEBUG BEGIN_STMT baseAddr_2(D)->MCR ={v} regValue_5; return; } LPI2C_Get_MasterRxFIFOSize (const struct LPI2C_Type * baseAddr) { uint32 tmp; long unsigned int _1; uint16 _7; [local count: 1073741824]: # DEBUG BEGIN_STMT tmp_4 ={v} baseAddr_3(D)->PARAM; # DEBUG tmp => tmp_4 # DEBUG BEGIN_STMT _1 = tmp_4 >> 8; tmp_5 = _1 & 15; # DEBUG tmp => tmp_5 # DEBUG BEGIN_STMT tmp_6 = 1 << tmp_5; # DEBUG tmp => tmp_6 # DEBUG BEGIN_STMT _7 = (uint16) tmp_6; return _7; }