Platform_Ipw_InitNonCore (const struct Platform_Ipw_NonCoreConfigType * pConfig)
{
  uint32 irqIdx;

  <bb 2> :
  _1 = pConfig->pIntRouteConfig;
  if (_1 != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 3> :
  irqIdx = 0;
  goto <bb 5>; [INV]

  <bb 4> :
  _2 = pConfig->pIntRouteConfig;
  _3 = _2->aIrqConfig;
  _4 = irqIdx * 12;
  _5 = _3 + _4;
  _6 = _5->eIrqNumber;
  IntCtrl_Ip_ClearPending (_6);
  _7 = pConfig->pIntRouteConfig;
  _8 = _7->aIrqConfig;
  _9 = irqIdx * 12;
  _10 = _8 + _9;
  _11 = _10->eIrqNumber;
  _12 = pConfig->pIntRouteConfig;
  _13 = _12->aIrqConfig;
  _14 = irqIdx * 12;
  _15 = _13 + _14;
  _16 = _15->pfHandler;
  IntCtrl_Ip_InstallHandler (_11, _16, 0B);
  irqIdx = irqIdx + 1;

  <bb 5> :
  _17 = pConfig->pIntRouteConfig;
  _18 = _17->u32ConfigIrqCount;
  if (irqIdx < _18)
    goto <bb 4>; [INV]
  else
    goto <bb 6>; [INV]

  <bb 6> :
  return;

}


Platform_Ipw_Init (const struct Platform_Ipw_ConfigType * pConfig)
{
  Std_ReturnType ret;

  <bb 2> :
  ret = 0;
  _1 = pConfig->pIntCtrlConfig;
  if (_1 != 0B)
    goto <bb 3>; [INV]
  else
    goto <bb 4>; [INV]

  <bb 3> :
  _2 = pConfig->pIntCtrlConfig;
  ret = Platform_Ipw_InitIntCtrl (_2);

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

  <bb 5> :
  _3 = pConfig->aSystemConfig;

  <bb 6> :
  return;

}


Platform_Ipw_InitIntCtrl (const struct IntCtrl_Ip_CtrlConfigType * pIntCtrlCtrlConfig)
{
  uint32 irqIdx;
  Std_ReturnType D.6368;

  <bb 2> :
  irqIdx = 0;
  goto <bb 7>; [INV]

  <bb 3> :
  _1 = pIntCtrlCtrlConfig->aIrqConfig;
  _2 = irqIdx * 8;
  _3 = _1 + _2;
  _4 = _3->eIrqNumber;
  _5 = pIntCtrlCtrlConfig->aIrqConfig;
  _6 = irqIdx * 8;
  _7 = _5 + _6;
  _8 = _7->u8IrqPriority;
  IntCtrl_Ip_SetPriority (_4, _8);
  _9 = pIntCtrlCtrlConfig->aIrqConfig;
  _10 = irqIdx * 8;
  _11 = _9 + _10;
  _12 = _11->bIrqEnabled;
  if (_12 != 0)
    goto <bb 4>; [INV]
  else
    goto <bb 5>; [INV]

  <bb 4> :
  _13 = pIntCtrlCtrlConfig->aIrqConfig;
  _14 = irqIdx * 8;
  _15 = _13 + _14;
  _16 = _15->eIrqNumber;
  IntCtrl_Ip_EnableIrq (_16);
  goto <bb 6>; [INV]

  <bb 5> :
  _17 = pIntCtrlCtrlConfig->aIrqConfig;
  _18 = irqIdx * 8;
  _19 = _17 + _18;
  _20 = _19->eIrqNumber;
  IntCtrl_Ip_DisableIrq (_20);

  <bb 6> :
  irqIdx = irqIdx + 1;

  <bb 7> :
  _21 = pIntCtrlCtrlConfig->u32ConfigIrqCount;
  if (irqIdx < _21)
    goto <bb 3>; [INV]
  else
    goto <bb 8>; [INV]

  <bb 8> :
  D.6368 = 0;

  <bb 9> :
<L6>:
  return D.6368;

}


