v_voip_decap: xdecap.c File Reference

| v_voip_decap Xilinx SDK Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List

Functions
xdecap.c File Reference

## Overview

This is the main file for Xilinx VoIP Decapsulator core.

Please see xdecap.h for more details of the driver.

    MODIFICATION HISTORY:

    Ver   Who    Date     Changes

    1.00   mmo   02/12/16 Initial release.

## Functions
int | XDecap_CfgInitialize (XDecap *InstancePtr, XDecap_Config *CfgPtr, UINTPTR EffectiveAddr)
| This function initializes the VoIP Decapsulator core. More...
void | XDecap_CoreChannelConfig (XDecap *InstancePtr)
| This function configures the Operating channel of VoIP Decapsulator and the general setting of VoIP Decapsulator. More...
void | XDecap_ChannelConfig (XDecap *InstancePtr, u16 Channels)
| This function Configures the VoIP Decapsulator Channels Parameter. More...
XDecap_ChannelCfg | XDecap_ChStatus (XDecap *InstancePtr, u16 Channels)
| This function reads the channel configured value of VoIP Decapsulator from register. More...
XDecap_Config | XDecap_CoreInfo (XDecap *InstancePtr)
| This function reads the Core Information (Configured by user through GUI), in the VoIP Decapsulator Register. More...
void | XDecap_SoftReset (XDecap *InstancePtr)
| This function perform software resets on VoIP Decapsulator, which clears all the registers. More...
void | XDecap_ChannelUpdate (XDecap *InstancePtr)
| This function send a pulse on VoIP Decapsulator to update the configured channel. More...
void | XDecap_ChannelAccess (XDecap *InstancePtr, u16 Channels)
| This function accesses the current configuration channel. More...
u32 | XDecap_RXPacketsCnt (XDecap *InstancePtr)
| This function reads current number of received packet at input interface of VoIP Decapsulator. More...
u32 | XDecap_MisMatchedPacketsCnt (XDecap *InstancePtr)
| This function reads the current number of discarded packet due to header (From Register) mismatch. More...
u32 | XDecap_ErrorPacketsCnt (XDecap *InstancePtr)
| This function reads the current number of discarded packet due to Error Packet, where received packet has tuser = 0. More...
u32 | XDecap_MismatchPacketCnt (XDecap *InstancePtr)
| This function send a pulse on Generic Decap Channel Update. More...
void | XDecap_ClearGeneralStatistic (XDecap *InstancePtr)
| This function clears the general register space statistic registers. More...
void | XDecap_PacketLockWindow (XDecap *InstancePtr)
| This function sets the Packet Lock Window, where if consecutive Incoming Packet of the Channel has same SDI Video Format (Extracted from ST2022-6 Packet), VoIP Decapsulator will trigger the Packet Lock Interrupt Process. More...
void | XDecap_PacketUnLockWindow (XDecap *InstancePtr)
| This function sets the Packet Unlock Window, where if consecutive Incoming Packet of the Channel has different SDI Video Format (Extracted from ST2022-6 Packet) from the Packet Lock SDI Video Format, VoIP Decapsulator will trigger the Packet Unlock Interrupt Process. More...
u8 | XDecap_PeakBufferLv (XDecap *InstancePtr)
| This function reads the Peak Buffer Level of the VoIP Decapsulator. More...
void | XDecap_ModuleEn (XDecap *InstancePtr)
| This function Enables/Disable the VoIP Decapsulator based on user Input at XDecap Structure. More...
void | XDecap_SetOperationMode (XDecap *InstancePtr, u16 Channels)
| This function set the Operation Mode of the VoIP Decapsulator based on user Input at XDecap Structure. More...
void | XDecap_ChannelClearStatistic (XDecap *InstancePtr, u16 Channels)
| This function Clears the Channel Statistic registers. More...
void | XDecap_ControlChannelEn (XDecap *InstancePtr, u16 Channels)
| This function Enable/Disable the Channel. More...
void | XDecap_ControlMPktDetEn (XDecap *InstancePtr, u16 Channels)
| This function Enable/Disable the Marker Packet Detection. More...
void | XDecap_ControlMPktDropEn (XDecap *InstancePtr, u16 Channels)
| This function Enable/Disable the Marker Packet Drop. More...
void | XDecap_SetMatchSelect (XDecap *InstancePtr, u16 Channels)
| This function sets the Header Filter Enable Setting. More...
void | XDecap_MatchIPv4Dest (XDecap *InstancePtr, u16 Channels)
| This function Sets the IP Destination Address of Incoming Packet for Matching/Filtering if the Filter is enabled. More...
void | XDecap_MatchIPv4Src (XDecap *InstancePtr, u16 Channels)
| This function Sets the IP Source Address of Incoming Packet for Matching/Filtering if the Filter is enabled. More...
void | XDecap_MatchUDPDest (XDecap *InstancePtr, u16 Channels)
| This function Sets the UDP Destination Port of Incoming Packet for Matching/Filtering if the Filter is enabled. More...
void | XDecap_MatchUDPSrc (XDecap *InstancePtr, u16 Channels)
| This function Sets the UDP Source Port of Incoming Packet for Matching/Filtering if the Filter is enabled. More...
void | XDecap_ToMatchVLANID (XDecap *InstancePtr, u16 Channels)
| This function Sets the VLAN Packet Filtering. More...
void | XDecap_MatchVLANID (XDecap *InstancePtr, u16 Channels)
| This function Sets the VLAN ID (12 Bits) of Incoming Packet for Matching/Filtering if the Filter is enabled. More...
void | XDecap_MatchSSRC (XDecap *InstancePtr, u16 Channels)
| This function Sets the RTP-SSRC Field of Incoming Packet for Matching/Filtering if the Filter is enabled. More...
u8 | XDecap_SDIPacketLockStatus (XDecap *InstancePtr, u16 Channels)
| This function <> More...
XDecap_StreamStatus | XDecap_StreamStat (XDecap *InstancePtr, u16 Channels)
| This function reads the ST2022-6 Packet Information. More...
u32 | XDecap_MediaValidPcktCnt (XDecap *InstancePtr, u16 Channels)
| This function reads current number of valid RTP packet (ST2022-6) per channel of VoIP Decapsulator. More...
u32 | XDecap_FECValidPcktCnt (XDecap *InstancePtr, u16 Channels)
| This function reads current number of valid FEC packet (ST2022-5) per channel of VoIP Decapsulator. More...
u32 | XDecap_ReOrderedPcktCnt (XDecap *InstancePtr, u16 Channels)
| This function reads current number of Re-Ordered packet per channel of VoIP Decapsulator. More...
u32 | XDecap_DropPcktCnt (XDecap *InstancePtr, u16 Channels)
| This function reads current number of Drop packet per channel of VoIP Decapsulator due to Buffer Full (Debug Register) More...
u8 | XDecap_VideoLockIntrStatus (XDecap *InstancePtr, u16 Channels)
| This function reads the Packet/Video Lock Interrupt Status. More...
u8 | XDecap_VideoUnLockIntrStatus (XDecap *InstancePtr, u16 Channels)
| This function reads the Packet/Video Unlock Interrupt Status. More...
u8 | XDecap_StreamStopIntrStatus (XDecap *InstancePtr, u16 Channels)
| This function reads the Packet Timeout Interrupt Status. More...
void | XDecap_EnableVideoLockIntr (XDecap *InstancePtr, u16 Channels)
| This function Enables/Un-Mask the Packet/Video Lock Interrupt. More...
void | XDecap_EnableVideoUnLockIntr (XDecap *InstancePtr, u16 Channels)
| This function Enables/Un-Mask the Packet/Video Un-Lock Interrupt. More...
void | XDecap_EnablePacketStopIntr (XDecap *InstancePtr, u16 Channels)
| This function Enables/Un-Mask the Packet Timeout Interrupt. More...
void | XDecap_DisableVideoLockIntr (XDecap *InstancePtr, u16 Channels)
| This function Disable/Mask the Packet Lock Interrupt. More...
void | XDecap_DisableVideoUnLockIntr (XDecap *InstancePtr, u16 Channels)
| This function Disable/Mask the Packet Un-Lock Interrupt. More...
void | XDecap_DisablePacketStopIntr (XDecap *InstancePtr, u16 Channels)
| This function Disable/Mask the Packet Timeout Interrupt. More...
void | XDecap_IntrClear (XDecap *InstancePtr, u16 Channels)
| This function Clears All Active Interrupt Status Bit. More...
void | XDecap_PacketStopTimer (XDecap *InstancePtr, u16 Channels)
| This function Sets the Timeout Value to trigger Packet Timeout Interrupt, if there are no packet received within the timeout period. More...

## Function Documentation

int XDecap_CfgInitialize | ( | XDecap * | InstancePtr,
|  | XDecap_Config * | CfgPtr,
|  | UINTPTR | EffectiveAddr
| ) |  |

This function initializes the VoIP Decapsulator core.

This function must be called prior to using the VoIP Decapsulator core. Initialization of the VoIP Decapsulator includes setting up the instance data and ensuring the hardware is in a quiescent state.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  CfgPtr | points to the configuration structure associated with the VoIP Decapsulator core.
  EffectiveAddr | is the base address of the device. If address translation is being used, then this parameter must reflect the virtual base address. Otherwise, the physical address should be used.

Returns
  - XST_SUCCESS if XDecap_CfgInitialize was successful.
  - XST_FAILURE if Channel Number has mismatched with value reflected on the register, and if the operating channel number is higher tha hardware supported channel number

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_Config::HWChannelNumber, XDecap::IsPacketLockCallbackSet, XDecap::IsPacketStopCallbackSet, XDecap::IsPacketUnLockCallbackSet, XDecap::IsReady, XDecap::PacketLockCallback, XDecap::PacketStopCallback, XDecap::PacketUnLockCallback, XDecap_BusyBit, XDecap_CoreInfo(), XDecap_ModuleEn(), and XDecap_SoftReset().

void XDecap_ChannelAccess | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function accesses the current configuration channel.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_WriteReg.

Referenced by XDecap_ChannelClearStatistic(), XDecap_ChannelConfig(), XDecap_ChIntr(), XDecap_ChStatus(), XDecap_ControlChannelEn(), XDecap_ControlMPktDetEn(), XDecap_ControlMPktDropEn(), XDecap_DisablePacketStopIntr(), XDecap_DisableVideoLockIntr(), XDecap_DisableVideoUnLockIntr(), XDecap_DropPcktCnt(), XDecap_EnablePacketStopIntr(), XDecap_EnableVideoLockIntr(), XDecap_EnableVideoUnLockIntr(), XDecap_FECValidPcktCnt(), XDecap_IntrClear(), XDecap_IntrHandler(), XDecap_MatchIPv4Dest(), XDecap_MatchIPv4Src(), XDecap_MatchSSRC(), XDecap_MatchUDPDest(), XDecap_MatchUDPSrc(), XDecap_MatchVLANID(), XDecap_MediaValidPcktCnt(), XDecap_PacketStopTimer(), XDecap_ReOrderedPcktCnt(), XDecap_SDIPacketLockStatus(), XDecap_SetMatchSelect(), XDecap_SetOperationMode(), XDecap_StreamStat(), XDecap_StreamStopIntrStatus(), XDecap_VideoLockIntrStatus(), and XDecap_VideoUnLockIntrStatus().

void XDecap_ChannelClearStatistic | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Clears the Channel Statistic registers.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

void XDecap_ChannelConfig | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Configures the VoIP Decapsulator Channels Parameter.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_ChannelAccess(), XDecap_ControlChannelEn(), XDecap_ControlMPktDetEn(), XDecap_ControlMPktDropEn(), XDecap_MatchIPv4Dest(), XDecap_MatchIPv4Src(), XDecap_MatchSSRC(), XDecap_MatchUDPDest(), XDecap_MatchUDPSrc(), XDecap_MatchVLANID(), XDecap_PacketStopTimer(), XDecap_SetMatchSelect(), XDecap_SetOperationMode(), and XDecap_ToMatchVLANID().

Referenced by XDecap_CoreChannelConfig().

void XDecap_ChannelUpdate | ( | XDecap * | InstancePtr | ) |

This function send a pulse on VoIP Decapsulator to update the configured channel.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  None.

Note
  None.

References XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelClearStatistic(), XDecap_ChIntr(), XDecap_ControlChannelEn(), XDecap_ControlMPktDetEn(), XDecap_ControlMPktDropEn(), XDecap_CoreChannelConfig(), XDecap_DisablePacketStopIntr(), XDecap_DisableVideoLockIntr(), XDecap_DisableVideoUnLockIntr(), XDecap_EnablePacketStopIntr(), XDecap_EnableVideoLockIntr(), XDecap_EnableVideoUnLockIntr(), XDecap_IntrClear(), XDecap_MatchIPv4Dest(), XDecap_MatchIPv4Src(), XDecap_MatchSSRC(), XDecap_MatchUDPDest(), XDecap_MatchUDPSrc(), XDecap_MatchVLANID(), XDecap_PacketStopTimer(), XDecap_SetMatchSelect(), and XDecap_SetOperationMode().

XDecap_ChannelCfg XDecap_ChStatus | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads the channel configured value of VoIP Decapsulator from register.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  XDecap_ChannelCfg_RegValue, which contains the channel configuration component

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

void XDecap_ClearGeneralStatistic | ( | XDecap * | InstancePtr | ) |

This function clears the general register space statistic registers.

It's a self clear register.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, and XDecap_WriteReg.

void XDecap_ControlChannelEn | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Enable/Disable the Channel.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_ControlMPktDetEn | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Enable/Disable the Marker Packet Detection.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_ControlMPktDropEn | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Enable/Disable the Marker Packet Drop.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_CoreChannelConfig | ( | XDecap * | InstancePtr | ) |

This function configures the Operating channel of VoIP Decapsulator and the general setting of VoIP Decapsulator.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  None.

Note
  None.

References XDecap_ChannelConfig(), XDecap_ChannelUpdate(), XDecap_ModuleEn(), XDecap_PacketLockWindow(), and XDecap_PacketUnLockWindow().

XDecap_Config XDecap_CoreInfo | ( | XDecap * | InstancePtr | ) |

This function reads the Core Information (Configured by user through GUI), in the VoIP Decapsulator Register.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  XDecap_Config of the HW Channel Number.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_Config::HWChannelNumber, and XDecap_ReadReg.

Referenced by XDecap_CfgInitialize().

void XDecap_DisablePacketStopIntr | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Disable/Mask the Packet Timeout Interrupt.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

void XDecap_DisableVideoLockIntr | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Disable/Mask the Packet Lock Interrupt.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

void XDecap_DisableVideoUnLockIntr | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Disable/Mask the Packet Un-Lock Interrupt.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

u32 XDecap_DropPcktCnt | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads current number of Drop packet per channel of VoIP Decapsulator due to Buffer Full (Debug Register)

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

void XDecap_EnablePacketStopIntr | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Enables/Un-Mask the Packet Timeout Interrupt.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

void XDecap_EnableVideoLockIntr | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Enables/Un-Mask the Packet/Video Lock Interrupt.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

void XDecap_EnableVideoUnLockIntr | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Enables/Un-Mask the Packet/Video Un-Lock Interrupt.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

u32 XDecap_ErrorPacketsCnt | ( | XDecap * | InstancePtr | ) |

This function reads the current number of discarded packet due to Error Packet, where received packet has tuser = 0.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  Number of Error Packet.

Note
  None.

References XDecap_ReadReg.

u32 XDecap_FECValidPcktCnt | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads current number of valid FEC packet (ST2022-5) per channel of VoIP Decapsulator.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

void XDecap_IntrClear | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Clears All Active Interrupt Status Bit.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), and XDecap_WriteReg.

void XDecap_MatchIPv4Dest | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the IP Destination Address of Incoming Packet for Matching/Filtering if the Filter is enabled.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_MatchIPv4Src | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the IP Source Address of Incoming Packet for Matching/Filtering if the Filter is enabled.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_MatchSSRC | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the RTP-SSRC Field of Incoming Packet for Matching/Filtering if the Filter is enabled.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_MatchUDPDest | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the UDP Destination Port of Incoming Packet for Matching/Filtering if the Filter is enabled.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_MatchUDPSrc | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the UDP Source Port of Incoming Packet for Matching/Filtering if the Filter is enabled.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_MatchVLANID | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the VLAN ID (12 Bits) of Incoming Packet for Matching/Filtering if the Filter is enabled.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

u32 XDecap_MediaValidPcktCnt | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads current number of valid RTP packet (ST2022-6) per channel of VoIP Decapsulator.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

u32 XDecap_MisMatchedPacketsCnt | ( | XDecap * | InstancePtr | ) |

This function reads the current number of discarded packet due to header (From Register) mismatch.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  Number of Mismatched Packet

Note
  None.

References XDecap_ReadReg.

u32 XDecap_MismatchPacketCnt | ( | XDecap * | InstancePtr | ) |

This function send a pulse on Generic Decap Channel Update.

Parameters

  InstancePtr | is a pointer to the XGeneric_Decap core instance.

Returns
  None.

Note
  None.

References XDecap_ReadReg.

void XDecap_ModuleEn | ( | XDecap * | InstancePtr | ) |

This function Enables/Disable the VoIP Decapsulator based on user Input at XDecap Structure.

XDecap->ModuleEnable

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_CfgInitialize(), and XDecap_CoreChannelConfig().

void XDecap_PacketLockWindow | ( | XDecap * | InstancePtr | ) |

This function sets the Packet Lock Window, where if consecutive Incoming Packet of the Channel has same SDI Video Format (Extracted from ST2022-6 Packet), VoIP Decapsulator will trigger the Packet Lock Interrupt Process.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_CoreChannelConfig().

void XDecap_PacketStopTimer | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the Timeout Value to trigger Packet Timeout Interrupt, if there are no packet received within the timeout period.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_PacketUnLockWindow | ( | XDecap * | InstancePtr | ) |

This function sets the Packet Unlock Window, where if consecutive Incoming Packet of the Channel has different SDI Video Format (Extracted from ST2022-6 Packet) from the Packet Lock SDI Video Format, VoIP Decapsulator will trigger the Packet Unlock Interrupt Process.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_CoreChannelConfig().

u8 XDecap_PeakBufferLv | ( | XDecap * | InstancePtr | ) |

This function reads the Peak Buffer Level of the VoIP Decapsulator.

(Debug Register)

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  Peak Buffer Level.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, and XDecap_ReadReg.

u32 XDecap_ReOrderedPcktCnt | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads current number of Re-Ordered packet per channel of VoIP Decapsulator.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

u32 XDecap_RXPacketsCnt | ( | XDecap * | InstancePtr | ) |

This function reads current number of received packet at input interface of VoIP Decapsulator.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  Number of Received Packet

Note
  None.

References XDecap_ReadReg.

u8 XDecap_SDIPacketLockStatus | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function <>

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

Referenced by XDecap_ChIntr().

void XDecap_SetMatchSelect | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function sets the Header Filter Enable Setting.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_SetOperationMode | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function set the Operation Mode of the VoIP Decapsulator based on user Input at XDecap Structure.

Normal Mode: VoIP Decapsulator doesn't have any information of incoming packet before operation Lossless Mode: VoIP Decapsulator have configured with Incoming Packet Information before operation.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), XDecap_ChannelUpdate(), XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

void XDecap_SoftReset | ( | XDecap * | InstancePtr | ) |

This function perform software resets on VoIP Decapsulator, which clears all the registers.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.

Returns
  None.

Note
  None.

References XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_CfgInitialize().

XDecap_StreamStatus XDecap_StreamStat | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads the ST2022-6 Packet Information.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

u8 XDecap_StreamStopIntrStatus | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads the Packet Timeout Interrupt Status.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

void XDecap_ToMatchVLANID | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Sets the VLAN Packet Filtering.

This function is valid if the VLAN Match Select is Enabled.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ReadReg, and XDecap_WriteReg.

Referenced by XDecap_ChannelConfig().

u8 XDecap_VideoLockIntrStatus | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads the Packet/Video Lock Interrupt Status.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.

u8 XDecap_VideoUnLockIntrStatus | ( | XDecap * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function reads the Packet/Video Unlock Interrupt Status.

Parameters

  InstancePtr | is a pointer to the XDecap core instance.
  Channels | is current configured channel

Returns
  None.

Note
  None.

References XDecap_Config::BaseAddress, XDecap::Config, XDecap_ChannelAccess(), and XDecap_ReadReg.