v_voip_fec_tx: xvoipfec_tx.c File Reference

| v_voip_fec_tx Xilinx SDK Drivers API Documentation

- Overview
- Data Structures
- APIs
- File List

Functions
xvoipfec_tx.c File Reference

## Overview

This is the main file for Xilinx VoIP FEC Transmitter core.

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

    MODIFICATION HISTORY:

    Ver   Who    Date     Changes

    1.00   mmo   02/12/16 Initial release.

## Functions
int | XVoipFEC_TX_CfgInitialize (XVoipFEC_TX *InstancePtr, XVoipFEC_TX_Config *CfgPtr, UINTPTR EffectiveAddr)
| This function initializes the VoIP FEC Transmitter core. More...
XVoipFEC_TX_Config | XVoipFEC_TX_CoreStatusRegValue (XVoipFEC_TX *InstancePtr)
| This function reads the Core Information (Configured by user through GUI), in the VoIP FEC Transmitter Register. More...
XVoipFEC_TX_PktCnt | XVoipFEC_TX_CoreStatisics (XVoipFEC_TX *InstancePtr)
| This function perform Statistic Resets on VoIP FEC Transmitter (General Space) More...
XVoipFEC_TX_FECParams | XVoipFEC_TX_FECParamsRegValue (XVoipFEC_TX *InstancePtr, u16 Channels)
| This function perform Reads Configured FEC Parameters. More...
void | XVoipFEC_TX_CoreChannelConfig (XVoipFEC_TX *InstancePtr)
| This function Configure all the VoIP FEC Transmitter Channel Space based on user configured value. More...
void | XVoipFEC_TX_SetFECParams (XVoipFEC_TX *InstancePtr, u16 Channels)
| This function Configures the FEC Parameters. More...
void | XVoipFEC_TX_SoftReset (XVoipFEC_TX *InstancePtr)
| This function perform software resets on VoIP FEC Transmitter, which clears all the registers. More...
void | XVoipFEC_TX_ChannelUpdate (XVoipFEC_TX *InstancePtr)
| This function perform Channel on VoIP FEC Transmitter, which updates the configured channel space register. More...
void | XVoipFEC_ChannelAccess (XVoipFEC_TX *InstancePtr, u16 Channels)
| This function accesses the Channel, need to be called before performing channel space register configuration. More...
void | XVoipFEC_TX_SetFEC_D (XVoipFEC_TX *InstancePtr, u16 Channels)
| This function sets FEC D Value. More...
void | XVoipFEC_TX_SetFEC_L (XVoipFEC_TX *InstancePtr, u16 Channels)
| This function sets FEC L Value. More...
void | XVoipFEC_TX_SetFECMode (XVoipFEC_TX *InstancePtr, u16 Channels)
| This function sets FEC Mode Value. More...
void | XVoipFEC_TX_SetFECNonBlockAllign (XVoipFEC_TX *InstancePtr, u16 Channels)
| This function sets FEC Block Alignment Mode. More...

## Function Documentation

void XVoipFEC_ChannelAccess | ( | XVoipFEC_TX * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function accesses the Channel, need to be called before performing channel space register configuration.

Parameters

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

Returns
  None.

Note
  None.

References XVoipFEC_TX_WriteReg.

Referenced by XVoipFEC_TX_CoreChannelConfig(), XVoipFEC_TX_FECParamsRegValue(), XVoipFEC_TX_SetFEC_D(), XVoipFEC_TX_SetFEC_L(), XVoipFEC_TX_SetFECMode(), XVoipFEC_TX_SetFECNonBlockAllign(), and XVoipFEC_TX_SetFECParams().

int XVoipFEC_TX_CfgInitialize | ( | XVoipFEC_TX * | InstancePtr,
|  | XVoipFEC_TX_Config * | CfgPtr,
|  | UINTPTR | EffectiveAddr
| ) |  |

This function initializes the VoIP FEC Transmitter core.

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

Parameters

  InstancePtr | is a pointer to the XVoipFEC_TX core instance.
  CfgPtr | points to the configuration structure associated with the VoIP FEC Transmitter 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 XVoipFEC_TX_CfgInitialize was successful.
  - XST_FAILURE

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, XVoipFEC_TX_BusyBit, XVoipFEC_TX_SetFECParams(), and XVoipFEC_TX_SoftReset().

void XVoipFEC_TX_ChannelUpdate | ( | XVoipFEC_TX * | InstancePtr | ) |

This function perform Channel on VoIP FEC Transmitter, which updates the configured channel space register.

Parameters

  InstancePtr | is a pointer to the XVoipFEC_TX core instance.

Returns
  None.

Note
  None.

References XVoipFEC_TX_ReadReg, and XVoipFEC_TX_WriteReg.

Referenced by XVoipFEC_TX_CoreChannelConfig(), XVoipFEC_TX_SetFEC_D(), XVoipFEC_TX_SetFEC_L(), XVoipFEC_TX_SetFECMode(), XVoipFEC_TX_SetFECNonBlockAllign(), and XVoipFEC_TX_SetFECParams().

void XVoipFEC_TX_CoreChannelConfig | ( | XVoipFEC_TX * | InstancePtr | ) |

This function Configure all the VoIP FEC Transmitter Channel Space based on user configured value.

Parameters

  InstancePtr | is a pointer to the XVoipFEC_TX core instance.

Returns

Note
  None.

References XVoipFEC_ChannelAccess(), XVoipFEC_TX_ChannelUpdate(), and XVoipFEC_TX_SetFECParams().

XVoipFEC_TX_PktCnt XVoipFEC_TX_CoreStatisics | ( | XVoipFEC_TX * | InstancePtr | ) |

This function perform Statistic Resets on VoIP FEC Transmitter (General Space)

Parameters

  InstancePtr | is a pointer to the XVoipFEC_TX core instance.

Returns
  XVoipFEC_TX_PktCntRegValue is Return Register Value of General Statistic VoIP FEC Transmitter.

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, and XVoipFEC_TX_ReadReg.

XVoipFEC_TX_Config XVoipFEC_TX_CoreStatusRegValue | ( | XVoipFEC_TX * | InstancePtr | ) |

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

Parameters

  InstancePtr | is a pointer to the XVoipFEC_TX core instance.

Returns
  XVoipFEC_TX_ConfigRegValue is Core Status Register Value.

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, XVoipFEC_TX_Config::HWChannelNumber, XVoipFEC_TX_Config::MaximumFECL, and XVoipFEC_TX_ReadReg.

XVoipFEC_TX_FECParams XVoipFEC_TX_FECParamsRegValue | ( | XVoipFEC_TX * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function perform Reads Configured FEC Parameters.

Parameters

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

Returns
  XVoipFEC_TX_FECParams_RegValue is configured FEC Parameters.

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, XVoipFEC_ChannelAccess(), and XVoipFEC_TX_ReadReg.

void XVoipFEC_TX_SetFEC_D | ( | XVoipFEC_TX * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function sets FEC D Value.

Parameters

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

Returns
  None.

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, XVoipFEC_ChannelAccess(), XVoipFEC_TX_ChannelUpdate(), XVoipFEC_TX_ReadReg, and XVoipFEC_TX_WriteReg.

Referenced by XVoipFEC_TX_SetFECParams().

void XVoipFEC_TX_SetFEC_L | ( | XVoipFEC_TX * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function sets FEC L Value.

Parameters

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

Returns
  None.

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, XVoipFEC_ChannelAccess(), XVoipFEC_TX_ChannelUpdate(), XVoipFEC_TX_ReadReg, and XVoipFEC_TX_WriteReg.

Referenced by XVoipFEC_TX_SetFECParams().

void XVoipFEC_TX_SetFECMode | ( | XVoipFEC_TX * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function sets FEC Mode Value.

FEC Bypass, 1D or 2D Mode

Parameters

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

Returns
  None.

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, XVoipFEC_ChannelAccess(), XVoipFEC_TX_ChannelUpdate(), XVoipFEC_TX_ReadReg, and XVoipFEC_TX_WriteReg.

Referenced by XVoipFEC_TX_SetFECParams().

void XVoipFEC_TX_SetFECNonBlockAllign | ( | XVoipFEC_TX * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function sets FEC Block Alignment Mode.

Parameters

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

Returns
  None.

Note
  None.

References XVoipFEC_TX_Config::BaseAddress, XVoipFEC_ChannelAccess(), XVoipFEC_TX_ChannelUpdate(), XVoipFEC_TX_ReadReg, and XVoipFEC_TX_WriteReg.

Referenced by XVoipFEC_TX_SetFECParams().

void XVoipFEC_TX_SetFECParams | ( | XVoipFEC_TX * | InstancePtr,
|  | u16 | Channels
| ) |  |

This function Configures the FEC Parameters.

Parameters

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

Returns

Note
  None.

References XVoipFEC_ChannelAccess(), XVoipFEC_TX_ChannelUpdate(), XVoipFEC_TX_SetFEC_D(), XVoipFEC_TX_SetFEC_L(), XVoipFEC_TX_SetFECMode(), and XVoipFEC_TX_SetFECNonBlockAllign().

Referenced by XVoipFEC_TX_CfgInitialize(), and XVoipFEC_TX_CoreChannelConfig().

void XVoipFEC_TX_SoftReset | ( | XVoipFEC_TX * | InstancePtr | ) |

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

Parameters

  InstancePtr | is a pointer to the XVoipFEC_TX core instance.

Returns
  None.

Note
  None.

References XVoipFEC_TX_ReadReg, and XVoipFEC_TX_WriteReg.

Referenced by XVoipFEC_TX_CfgInitialize().