ADM/GW/Debug_FLASH/RTD/src/Pit_Ip.c.016i.visibility
3minbe f7e8a96a61 1.주행안전 시나리오 기반 로직 최신화
2.주행안전 시나리오 기반 VCU CAN 수정
3.주행안전 시나리오 기반 DBC 최신화
2025-07-16 17:20:17 +09:00

1168 lines
28 KiB
Plaintext

Marking local functions: Pit_Ip_ProcessCommonInterrupt Pit_Ip_GetLowerLifetimerValue Pit_Ip_GetUpperLifetimerValue Pit_Ip_GetInterruptBit Pit_Ip_ClearInterruptFlag Pit_Ip_EnableInterrupt Pit_Ip_GetCounterValue Pit_Ip_SetCounterValue Pit_Ip_IsChannelRunning Pit_Ip_Reset Pit_Ip_SetChainMode Pit_Ip_SetDebugMode Pit_Ip_EnableTimer Pit_Ip_EnableModule
Marking externally visible functions: PIT_0_ISR Pit_Ip_GetLifetimeTimer Pit_Ip_SetLifetimeTimerCount Pit_Ip_DisableChannelInterrupt Pit_Ip_EnableChannelInterrupt Pit_Ip_GetCurrentTimer Pit_Ip_StopChannel Pit_Ip_StartChannel Pit_Ip_Deinit Pit_Ip_InitChannel Pit_Ip_Init Pit_Ip_GetInterruptFlags Pit_Ip_GetLoadValue
Marking externally visible variables: pitBase
Reclaiming functions:
Reclaiming variables:
Clearing address taken flags:
Symbol table:
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_01/36 (SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_01) @06b96b60
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_SetChainMode/7
Calls:
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_01/35 (SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_01) @06b96a80
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_SetChainMode/7
Calls:
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_03/34 (SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_03) @06b8be00
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_ClearInterruptFlag/13
Calls:
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_03/33 (SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_03) @06b8bd20
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_ClearInterruptFlag/13
Calls:
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_02/32 (SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_02) @06b8bb60
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_EnableInterrupt/12
Calls:
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_02/31 (SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_02) @06b8ba80
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_EnableInterrupt/12
Calls:
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_00/30 (SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_00) @06b8b8c0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_EnableTimer/5
Calls:
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_00/29 (SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_00) @06b8b7e0
Type: function
Visibility: external public
References:
Referring:
Availability: not_available
Function flags: optimize_size
Called by: Pit_Ip_EnableTimer/5
Calls:
PIT_0_ISR/28 (PIT_0_ISR) @06b84b60
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_ProcessCommonInterrupt/17 Pit_Ip_GetInterruptFlags/3
Pit_Ip_GetLifetimeTimer/27 (Pit_Ip_GetLifetimeTimer) @06b84620
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_GetLowerLifetimerValue/16 Pit_Ip_GetUpperLifetimerValue/15
Pit_Ip_SetLifetimeTimerCount/26 (Pit_Ip_SetLifetimeTimerCount) @06b840e0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_EnableTimer/5 Pit_Ip_SetCounterValue/10 Pit_Ip_EnableTimer/5 Pit_Ip_SetChainMode/7 Pit_Ip_EnableInterrupt/12 Pit_Ip_SetCounterValue/10
Pit_Ip_DisableChannelInterrupt/25 (Pit_Ip_DisableChannelInterrupt) @06b84d20
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_ClearInterruptFlag/13 Pit_Ip_EnableInterrupt/12
Pit_Ip_EnableChannelInterrupt/24 (Pit_Ip_EnableChannelInterrupt) @06b84a80
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_EnableInterrupt/12 Pit_Ip_ClearInterruptFlag/13
Pit_Ip_GetCurrentTimer/23 (Pit_Ip_GetCurrentTimer) @06b847e0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_GetCounterValue/11
Pit_Ip_StopChannel/22 (Pit_Ip_StopChannel) @06b84540
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_ClearInterruptFlag/13 Pit_Ip_EnableTimer/5
Pit_Ip_StartChannel/21 (Pit_Ip_StartChannel) @06b842a0
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_EnableTimer/5 Pit_Ip_SetCounterValue/10 Pit_Ip_IsChannelRunning/9
Pit_Ip_Deinit/20 (Pit_Ip_Deinit) @06b84000
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_Reset/8
Pit_Ip_InitChannel/19 (Pit_Ip_InitChannel) @06b7db60
Type: function definition analyzed
Visibility: externally_visible public
References: Pit_Ip_u32ChState/1 (write)Pit_Ip_u32ChState/1 (write)Pit_Ip_u32ChState/1 (write)
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_ClearInterruptFlag/13 Pit_Ip_EnableInterrupt/12 Pit_Ip_EnableTimer/5
Pit_Ip_Init/18 (Pit_Ip_Init) @06b7d620
Type: function definition analyzed
Visibility: externally_visible public
References:
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls: Pit_Ip_SetDebugMode/6 Pit_Ip_EnableModule/4
Pit_Ip_ProcessCommonInterrupt/17 (Pit_Ip_ProcessCommonInterrupt) @06b7d0e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: Pit_Ip_u32ChState/1 (read)Pit_Ip_u32ChState/1 (read)Pit_Ip_u32ChState/1 (read)Pit_Ip_u32ChState/1 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: PIT_0_ISR/28
Calls: Pit_Ip_ClearInterruptFlag/13 Pit_Ip_GetInterruptBit/14 Pit_Ip_GetInterruptFlags/3
Indirect call
Pit_Ip_GetLowerLifetimerValue/16 (Pit_Ip_GetLowerLifetimerValue) @06b7dd20
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_GetLifetimeTimer/27
Calls:
Pit_Ip_GetUpperLifetimerValue/15 (Pit_Ip_GetUpperLifetimerValue) @06b7da80
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_GetLifetimeTimer/27
Calls:
Pit_Ip_GetInterruptBit/14 (Pit_Ip_GetInterruptBit) @06b7d7e0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_ProcessCommonInterrupt/17
Calls:
Pit_Ip_ClearInterruptFlag/13 (Pit_Ip_ClearInterruptFlag) @06b7d540
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_ProcessCommonInterrupt/17 Pit_Ip_DisableChannelInterrupt/25 Pit_Ip_EnableChannelInterrupt/24 Pit_Ip_StopChannel/22 Pit_Ip_InitChannel/19
Calls: SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_03/34 SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_03/33
Pit_Ip_EnableInterrupt/12 (Pit_Ip_EnableInterrupt) @06b7d2a0
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_SetLifetimeTimerCount/26 Pit_Ip_DisableChannelInterrupt/25 Pit_Ip_EnableChannelInterrupt/24 Pit_Ip_InitChannel/19
Calls: SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_02/32 SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_02/31
Pit_Ip_GetCounterValue/11 (Pit_Ip_GetCounterValue) @06b7d000
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_GetCurrentTimer/23
Calls:
Pit_Ip_SetCounterValue/10 (Pit_Ip_SetCounterValue) @06ce3b60
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_SetLifetimeTimerCount/26 Pit_Ip_SetLifetimeTimerCount/26 Pit_Ip_StartChannel/21
Calls:
Pit_Ip_IsChannelRunning/9 (Pit_Ip_IsChannelRunning) @06ce3d20
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_StartChannel/21
Calls:
Pit_Ip_Reset/8 (Pit_Ip_Reset) @06ce3a80
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_Deinit/20
Calls:
Pit_Ip_SetChainMode/7 (Pit_Ip_SetChainMode) @06cddc40
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_SetLifetimeTimerCount/26
Calls: SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_01/36 SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_01/35
Pit_Ip_SetDebugMode/6 (Pit_Ip_SetDebugMode) @06cdd700
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_Init/18
Calls:
Pit_Ip_EnableTimer/5 (Pit_Ip_EnableTimer) @06cdde00
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_SetLifetimeTimerCount/26 Pit_Ip_SetLifetimeTimerCount/26 Pit_Ip_StopChannel/22 Pit_Ip_StartChannel/21 Pit_Ip_InitChannel/19
Calls: SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_00/30 SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_00/29
Pit_Ip_EnableModule/4 (Pit_Ip_EnableModule) @06cddb60
Type: function definition analyzed
Visibility: prevailing_def_ironly
References: pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: local
Function flags: body local optimize_size
Called by: Pit_Ip_Init/18
Calls:
Pit_Ip_GetInterruptFlags/3 (Pit_Ip_GetInterruptFlags) @06cdd8c0
Type: function definition analyzed
Visibility: externally_visible public
References: pitBase/0 (read)pitBase/0 (read)
Referring:
Availability: available
Function flags: body optimize_size
Called by: Pit_Ip_ProcessCommonInterrupt/17 PIT_0_ISR/28
Calls:
Pit_Ip_GetLoadValue/2 (Pit_Ip_GetLoadValue) @06cdd620
Type: function definition analyzed
Visibility: externally_visible public
References: pitBase/0 (read)
Referring:
Availability: available
Function flags: body optimize_size
Called by:
Calls:
Pit_Ip_u32ChState/1 (Pit_Ip_u32ChState) @06cdb048
Type: variable definition analyzed
Visibility: prevailing_def_ironly
References:
Referring: Pit_Ip_InitChannel/19 (write)Pit_Ip_InitChannel/19 (write)Pit_Ip_InitChannel/19 (write)Pit_Ip_ProcessCommonInterrupt/17 (read)Pit_Ip_ProcessCommonInterrupt/17 (read)Pit_Ip_ProcessCommonInterrupt/17 (read)Pit_Ip_ProcessCommonInterrupt/17 (read)
Availability: available
Varpool flags: initialized
pitBase/0 (pitBase) @06b76ee8
Type: variable definition analyzed
Visibility: externally_visible public
References:
Referring: Pit_Ip_GetLoadValue/2 (read)Pit_Ip_GetInterruptFlags/3 (read)Pit_Ip_GetInterruptFlags/3 (read)Pit_Ip_EnableModule/4 (read)Pit_Ip_EnableModule/4 (read)Pit_Ip_SetDebugMode/6 (read)Pit_Ip_SetDebugMode/6 (read)Pit_Ip_SetDebugMode/6 (read)Pit_Ip_SetDebugMode/6 (read)Pit_Ip_EnableTimer/5 (read)Pit_Ip_EnableTimer/5 (read)Pit_Ip_EnableTimer/5 (read)Pit_Ip_EnableTimer/5 (read)Pit_Ip_EnableInterrupt/12 (read)Pit_Ip_EnableInterrupt/12 (read)Pit_Ip_EnableInterrupt/12 (read)Pit_Ip_EnableInterrupt/12 (read)Pit_Ip_ClearInterruptFlag/13 (read)Pit_Ip_ClearInterruptFlag/13 (read)Pit_Ip_Reset/8 (read)Pit_Ip_Reset/8 (read)Pit_Ip_Reset/8 (read)Pit_Ip_Reset/8 (read)Pit_Ip_Reset/8 (read)Pit_Ip_Reset/8 (read)Pit_Ip_Reset/8 (read)Pit_Ip_IsChannelRunning/9 (read)Pit_Ip_SetCounterValue/10 (read)Pit_Ip_GetCounterValue/11 (read)Pit_Ip_SetChainMode/7 (read)Pit_Ip_SetChainMode/7 (read)Pit_Ip_SetChainMode/7 (read)Pit_Ip_SetChainMode/7 (read)Pit_Ip_GetUpperLifetimerValue/15 (read)Pit_Ip_GetLowerLifetimerValue/16 (read)Pit_Ip_GetInterruptBit/14 (read)
Availability: available
Varpool flags: initialized read-only const-value-known
PIT_0_ISR ()
{
uint32 temp;
uint8 channel;
uint8 instance;
<bb 2> :
# DEBUG BEGIN_STMT
instance = 0;
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
temp = 0;
# DEBUG BEGIN_STMT
channel = 0;
goto <bb 6>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
temp = Pit_Ip_GetInterruptFlags (instance, channel);
# DEBUG BEGIN_STMT
if (temp == 1)
goto <bb 4>; [INV]
else
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
Pit_Ip_ProcessCommonInterrupt (instance, channel);
<bb 5> :
# DEBUG BEGIN_STMT
channel.1_1 = channel;
channel = channel.1_1 + 1;
<bb 6> :
# DEBUG BEGIN_STMT
if (channel <= 4)
goto <bb 3>; [INV]
else
goto <bb 7>; [INV]
<bb 7> :
return;
}
Pit_Ip_GetLifetimeTimer (uint8 instance)
{
uint32 valueL;
uint32 valueH;
uint64 lifeTimeValue;
uint64 D.4663;
<bb 2> :
# DEBUG BEGIN_STMT
lifeTimeValue = 0;
# DEBUG BEGIN_STMT
valueH = 0;
# DEBUG BEGIN_STMT
valueL = 0;
# DEBUG BEGIN_STMT
valueH = Pit_Ip_GetUpperLifetimerValue (instance);
# DEBUG BEGIN_STMT
valueL = Pit_Ip_GetLowerLifetimerValue (instance);
# DEBUG BEGIN_STMT
_1 = (long long unsigned int) valueH;
_2 = _1 << 32;
_3 = (long long unsigned int) valueL;
lifeTimeValue = _2 + _3;
# DEBUG BEGIN_STMT
D.4663 = lifeTimeValue;
return D.4663;
}
Pit_Ip_SetLifetimeTimerCount (uint8 instance)
{
<bb 2> :
# DEBUG BEGIN_STMT
Pit_Ip_SetCounterValue (instance, 1, 4294967295);
# DEBUG BEGIN_STMT
Pit_Ip_EnableInterrupt (instance, 1, 0);
# DEBUG BEGIN_STMT
Pit_Ip_SetChainMode (instance, 1, 1);
# DEBUG BEGIN_STMT
Pit_Ip_EnableTimer (instance, 1, 1);
# DEBUG BEGIN_STMT
Pit_Ip_SetCounterValue (instance, 0, 4294967295);
# DEBUG BEGIN_STMT
Pit_Ip_EnableTimer (instance, 0, 1);
return;
}
Pit_Ip_DisableChannelInterrupt (uint8 instance, uint8 channel)
{
<bb 2> :
# DEBUG BEGIN_STMT
Pit_Ip_EnableInterrupt (instance, channel, 0);
# DEBUG BEGIN_STMT
Pit_Ip_ClearInterruptFlag (instance, channel);
return;
}
Pit_Ip_EnableChannelInterrupt (uint8 instance, uint8 channel)
{
<bb 2> :
# DEBUG BEGIN_STMT
Pit_Ip_ClearInterruptFlag (instance, channel);
# DEBUG BEGIN_STMT
Pit_Ip_EnableInterrupt (instance, channel, 1);
return;
}
Pit_Ip_GetCurrentTimer (uint8 instance, uint8 channel)
{
uint64 counterValue;
uint64 D.4655;
<bb 2> :
# DEBUG BEGIN_STMT
counterValue = 0;
# DEBUG BEGIN_STMT
_1 = Pit_Ip_GetCounterValue (instance, channel);
counterValue = (uint64) _1;
# DEBUG BEGIN_STMT
D.4655 = counterValue;
return D.4655;
}
Pit_Ip_StopChannel (uint8 instance, uint8 channel)
{
<bb 2> :
# DEBUG BEGIN_STMT
Pit_Ip_EnableTimer (instance, channel, 0);
# DEBUG BEGIN_STMT
Pit_Ip_ClearInterruptFlag (instance, channel);
return;
}
Pit_Ip_StartChannel (uint8 instance, uint8 channel, uint32 countValue)
{
boolean isRunning;
<bb 2> :
# DEBUG BEGIN_STMT
isRunning = 0;
# DEBUG BEGIN_STMT
isRunning = Pit_Ip_IsChannelRunning (instance, channel);
# DEBUG BEGIN_STMT
_1 = ~isRunning;
if (_1 != 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_2 = countValue + 4294967295;
Pit_Ip_SetCounterValue (instance, channel, _2);
# DEBUG BEGIN_STMT
Pit_Ip_EnableTimer (instance, channel, 1);
<bb 4> :
return;
}
Pit_Ip_Deinit (uint8 instance)
{
boolean rtiChannelExists;
uint8 channelNum;
<bb 2> :
# DEBUG BEGIN_STMT
channelNum = 0;
# DEBUG BEGIN_STMT
rtiChannelExists = 0;
# DEBUG BEGIN_STMT
_1 = (int) instance;
switch (_1) <default: <L5> [INV], case 0: <L0> [INV], case 1: <L1> [INV], case 2: <L2> [INV]>
<bb 3> :
<L0>:
# DEBUG BEGIN_STMT
channelNum = 5;
# DEBUG BEGIN_STMT
rtiChannelExists = 1;
# DEBUG BEGIN_STMT
goto <bb 6>; [INV]
<bb 4> :
<L1>:
# DEBUG BEGIN_STMT
channelNum = 4;
# DEBUG BEGIN_STMT
goto <bb 6>; [INV]
<bb 5> :
<L2>:
# DEBUG BEGIN_STMT
channelNum = 4;
# DEBUG BEGIN_STMT
<bb 6> :
<L5>:
# DEBUG BEGIN_STMT
Pit_Ip_Reset (instance, channelNum, rtiChannelExists);
return;
}
Pit_Ip_InitChannel (uint8 instance, const struct Pit_Ip_ChannelConfigType * chnlConfig)
{
<bb 2> :
# DEBUG BEGIN_STMT
_1 = chnlConfig->hwChannel;
Pit_Ip_EnableTimer (instance, _1, 0);
# DEBUG BEGIN_STMT
_2 = chnlConfig->hwChannel;
Pit_Ip_EnableInterrupt (instance, _2, 0);
# DEBUG BEGIN_STMT
_3 = chnlConfig->hwChannel;
Pit_Ip_ClearInterruptFlag (instance, _3);
# DEBUG BEGIN_STMT
_4 = (int) instance;
_5 = chnlConfig->hwChannel;
_6 = (int) _5;
Pit_Ip_u32ChState[_4][_6].chInit = 1;
# DEBUG BEGIN_STMT
_7 = (int) instance;
_8 = chnlConfig->hwChannel;
_9 = (int) _8;
_10 = chnlConfig->callback;
Pit_Ip_u32ChState[_7][_9].callback = _10;
# DEBUG BEGIN_STMT
_11 = (int) instance;
_12 = chnlConfig->hwChannel;
_13 = (int) _12;
_14 = chnlConfig->callbackParam;
Pit_Ip_u32ChState[_11][_13].callbackParam = _14;
return;
}
Pit_Ip_Init (uint8 instance, const struct Pit_Ip_InstanceConfigType * config)
{
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
_1 = config->enableStandardTimers;
if (_1 != 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
Pit_Ip_EnableModule (instance, 0);
<bb 4> :
# DEBUG BEGIN_STMT
_2 = config->stopRunInDebug;
Pit_Ip_SetDebugMode (instance, _2);
return;
}
Pit_Ip_ProcessCommonInterrupt (uint8 instance, uint8 channel)
{
uint32 temp2;
uint32 temp1;
<bb 2> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
temp1 = Pit_Ip_GetInterruptFlags (instance, channel);
# DEBUG BEGIN_STMT
temp2 = Pit_Ip_GetInterruptBit (instance, channel);
# DEBUG BEGIN_STMT
Pit_Ip_ClearInterruptFlag (instance, channel);
# DEBUG BEGIN_STMT
if (temp1 == 1)
goto <bb 3>; [INV]
else
goto <bb 7>; [INV]
<bb 3> :
if (temp2 == 1)
goto <bb 4>; [INV]
else
goto <bb 7>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = (int) channel;
_3 = Pit_Ip_u32ChState[_1][_2].chInit;
if (_3 != 0)
goto <bb 5>; [INV]
else
goto <bb 7>; [INV]
<bb 5> :
_4 = (int) instance;
_5 = (int) channel;
_6 = Pit_Ip_u32ChState[_4][_5].callback;
if (_6 != 0B)
goto <bb 6>; [INV]
else
goto <bb 7>; [INV]
<bb 6> :
# DEBUG BEGIN_STMT
_7 = (int) instance;
_8 = (int) channel;
_9 = Pit_Ip_u32ChState[_7][_8].callback;
_10 = (int) instance;
_11 = (int) channel;
_12 = Pit_Ip_u32ChState[_10][_11].callbackParam;
_9 (_12);
<bb 7> :
return;
}
Pit_Ip_GetLowerLifetimerValue (uint8 instance)
{
uint32 lowerValue;
uint32 D.4667;
<bb 2> :
# DEBUG BEGIN_STMT
lowerValue = 0;
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
lowerValue = _2->LTMR64L;
# DEBUG BEGIN_STMT
D.4667 = lowerValue;
return D.4667;
}
Pit_Ip_GetUpperLifetimerValue (uint8 instance)
{
uint32 upperValue;
uint32 D.4665;
<bb 2> :
# DEBUG BEGIN_STMT
upperValue = 0;
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
upperValue = _2->LTMR64H;
# DEBUG BEGIN_STMT
D.4665 = upperValue;
return D.4665;
}
Pit_Ip_GetInterruptBit (uint8 instance, uint8 channel)
{
uint32 returnFlag;
uint32 D.4679;
<bb 2> :
# DEBUG BEGIN_STMT
returnFlag = 0;
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
_4 = _2->TIMER[_3].TCTRL;
_5 = _4 >> 1;
returnFlag = _5 & 1;
# DEBUG BEGIN_STMT
D.4679 = returnFlag;
return D.4679;
}
Pit_Ip_ClearInterruptFlag (uint8 instance, uint8 channel)
{
<bb 2> :
# DEBUG BEGIN_STMT
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_03 ();
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
_4 = _2->TIMER[_3].TFLG;
_5 = (int) instance;
_6 = pitBase[_5];
_7 = (int) channel;
_8 = _4 | 1;
_6->TIMER[_7].TFLG = _8;
# DEBUG BEGIN_STMT
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_03 ();
return;
}
Pit_Ip_EnableInterrupt (uint8 instance, uint8 channel, boolean enable)
{
<bb 2> :
# DEBUG BEGIN_STMT
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_02 ();
# DEBUG BEGIN_STMT
if (enable != 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
_4 = _2->TIMER[_3].TCTRL;
_5 = (int) instance;
_6 = pitBase[_5];
_7 = (int) channel;
_8 = _4 | 2;
_6->TIMER[_7].TCTRL = _8;
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_9 = (int) instance;
_10 = pitBase[_9];
_11 = (int) channel;
_12 = _10->TIMER[_11].TCTRL;
_13 = (int) instance;
_14 = pitBase[_13];
_15 = (int) channel;
_16 = _12 & 4294967293;
_14->TIMER[_15].TCTRL = _16;
<bb 5> :
# DEBUG BEGIN_STMT
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_02 ();
return;
}
Pit_Ip_GetCounterValue (uint8 instance, uint8 channel)
{
uint32 counterValue;
uint32 D.4657;
<bb 2> :
# DEBUG BEGIN_STMT
counterValue = 0;
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
counterValue = _2->TIMER[_3].CVAL;
# DEBUG BEGIN_STMT
D.4657 = counterValue;
return D.4657;
}
Pit_Ip_SetCounterValue (uint8 instance, uint8 channel, uint32 value)
{
<bb 2> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
_2->TIMER[_3].LDVAL = value;
return;
}
Pit_Ip_IsChannelRunning (uint8 instance, uint8 channel)
{
boolean isRunning;
boolean D.4653;
<bb 2> :
# DEBUG BEGIN_STMT
isRunning = 0;
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
_4 = _2->TIMER[_3].TCTRL;
_5 = _4 & 1;
isRunning = _5 == 1;
# DEBUG BEGIN_STMT
D.4653 = isRunning;
return D.4653;
}
Pit_Ip_Reset (uint8 instance, uint8 channelNum, boolean available)
{
uint8 i;
uint32 channelIndex;
uint32 mask;
<bb 2> :
# DEBUG BEGIN_STMT
mask = 0;
# DEBUG BEGIN_STMT
channelIndex = (uint32) channelNum;
# DEBUG BEGIN_STMT
if (available != 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
channelIndex = channelIndex + 4294967295;
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_2->RTI_TCTRL = 0;
# DEBUG BEGIN_STMT
_3 = (int) instance;
_4 = pitBase[_3];
_4->RTI_LDVAL = 0;
# DEBUG BEGIN_STMT
_5 = (int) instance;
_6 = pitBase[_5];
_6->RTI_TFLG = 1;
# DEBUG BEGIN_STMT
mask = 6;
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
mask = 2;
<bb 5> :
# DEBUG BEGIN_STMT
# DEBUG BEGIN_STMT
i = 0;
goto <bb 7>; [INV]
<bb 6> :
# DEBUG BEGIN_STMT
_7 = (int) instance;
_8 = pitBase[_7];
_9 = (int) i;
_8->TIMER[_9].TCTRL = 0;
# DEBUG BEGIN_STMT
_10 = (int) instance;
_11 = pitBase[_10];
_12 = (int) i;
_11->TIMER[_12].LDVAL = 0;
# DEBUG BEGIN_STMT
_13 = (int) instance;
_14 = pitBase[_13];
_15 = (int) i;
_14->TIMER[_15].TFLG = 1;
# DEBUG BEGIN_STMT
i.0_16 = i;
i = i.0_16 + 1;
<bb 7> :
# DEBUG BEGIN_STMT
_17 = (long unsigned int) i;
if (channelIndex > _17)
goto <bb 6>; [INV]
else
goto <bb 8>; [INV]
<bb 8> :
# DEBUG BEGIN_STMT
_18 = (int) instance;
_19 = pitBase[_18];
_19->MCR = mask;
return;
}
Pit_Ip_SetChainMode (uint8 instance, uint8 channel, boolean enable)
{
<bb 2> :
# DEBUG BEGIN_STMT
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_01 ();
# DEBUG BEGIN_STMT
if (enable != 0)
goto <bb 3>; [INV]
else
goto <bb 5>; [INV]
<bb 3> :
if (channel != 0)
goto <bb 4>; [INV]
else
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
_4 = _2->TIMER[_3].TCTRL;
_5 = (int) instance;
_6 = pitBase[_5];
_7 = (int) channel;
_8 = _4 | 4;
_6->TIMER[_7].TCTRL = _8;
goto <bb 6>; [INV]
<bb 5> :
# DEBUG BEGIN_STMT
_9 = (int) instance;
_10 = pitBase[_9];
_11 = (int) channel;
_12 = _10->TIMER[_11].TCTRL;
_13 = (int) instance;
_14 = pitBase[_13];
_15 = (int) channel;
_16 = _12 & 4294967291;
_14->TIMER[_15].TCTRL = _16;
<bb 6> :
# DEBUG BEGIN_STMT
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_01 ();
return;
}
Pit_Ip_SetDebugMode (uint8 instance, boolean stopRun)
{
<bb 2> :
# DEBUG BEGIN_STMT
if (stopRun != 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = _2->MCR;
_4 = (int) instance;
_5 = pitBase[_4];
_6 = _3 | 1;
_5->MCR = _6;
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_7 = (int) instance;
_8 = pitBase[_7];
_9 = _8->MCR;
_10 = (int) instance;
_11 = pitBase[_10];
_12 = _9 & 4294967294;
_11->MCR = _12;
<bb 5> :
return;
}
Pit_Ip_EnableTimer (uint8 instance, uint8 channel, boolean enable)
{
<bb 2> :
# DEBUG BEGIN_STMT
SchM_Enter_Gpt_GPT_EXCLUSIVE_AREA_00 ();
# DEBUG BEGIN_STMT
if (enable != 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
_4 = _2->TIMER[_3].TCTRL;
_5 = (int) instance;
_6 = pitBase[_5];
_7 = (int) channel;
_8 = _4 | 1;
_6->TIMER[_7].TCTRL = _8;
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_9 = (int) instance;
_10 = pitBase[_9];
_11 = (int) channel;
_12 = _10->TIMER[_11].TCTRL;
_13 = (int) instance;
_14 = pitBase[_13];
_15 = (int) channel;
_16 = _12 & 4294967294;
_14->TIMER[_15].TCTRL = _16;
<bb 5> :
# DEBUG BEGIN_STMT
SchM_Exit_Gpt_GPT_EXCLUSIVE_AREA_00 ();
return;
}
Pit_Ip_EnableModule (uint8 instance, uint8 timerType)
{
<bb 2> :
# DEBUG BEGIN_STMT
if (timerType == 0)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = _2->MCR;
_4 = (int) instance;
_5 = pitBase[_4];
_6 = _3 & 4294967293;
_5->MCR = _6;
<bb 4> :
return;
}
Pit_Ip_GetInterruptFlags (uint8 instance, uint8 channel)
{
uint32 returnFlag;
uint32 D.4632;
<bb 2> :
# DEBUG BEGIN_STMT
returnFlag = 0;
# DEBUG BEGIN_STMT
if (channel == 4)
goto <bb 3>; [INV]
else
goto <bb 4>; [INV]
<bb 3> :
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = _2->RTI_TFLG;
returnFlag = _3 & 1;
goto <bb 5>; [INV]
<bb 4> :
# DEBUG BEGIN_STMT
_4 = (int) instance;
_5 = pitBase[_4];
_6 = (int) channel;
_7 = _5->TIMER[_6].TFLG;
returnFlag = _7 & 1;
<bb 5> :
# DEBUG BEGIN_STMT
D.4632 = returnFlag;
return D.4632;
}
Pit_Ip_GetLoadValue (uint8 instance, uint8 channel)
{
uint32 periodValue;
uint32 D.4627;
<bb 2> :
# DEBUG BEGIN_STMT
periodValue = 0;
# DEBUG BEGIN_STMT
_1 = (int) instance;
_2 = pitBase[_1];
_3 = (int) channel;
periodValue = _2->TIMER[_3].LDVAL;
# DEBUG BEGIN_STMT
D.4627 = periodValue;
return D.4627;
}