/* Check the status of the selected IO interrupt pending bit.  */
uint32_t mfxstm32l152_IO_ITStatus(uint16_t DeviceAddr, uint32_t IO_Pin)
/* Check the status of the selected IO interrupt pending bit.  */
uint32_t mfxstm32l152_IO_ITStatus(uint16_t DeviceAddr, uint32_t IO_Pin)
{
  uint8_t   tmp1 = 0;
  uint16_t  tmp2 = 0;
  uint32_t  tmp3 = 0;
  if(IO_Pin & 0xFF)
  {
    tmp1 = MFX_IO_Read(DeviceAddr, MFXSTM32L152_REG_ADR_IRQ_GPI_PENDING1);
  }
  if(IO_Pin & 0xFFFF00)
  {
    tmp2 = (uint16_t) MFX_IO_Read(DeviceAddr, MFXSTM32L152_REG_ADR_IRQ_GPI_PENDING2);
  }
  if(IO_Pin & 0xFFFF0000)
  {
    tmp3 = (uint32_t) MFX_IO_Read(DeviceAddr, MFXSTM32L152_REG_ADR_IRQ_GPI_PENDING3);
  }
  tmp3 = tmp1 + (tmp2 << 8) + (tmp3 << 16);
  return(tmp3 & IO_Pin);
}