no-OS
Macros | Functions | Variables
transmitter.c File Reference
#include <stdio.h>
#include <string.h>
#include "transmitter.h"
#include "tx_lib.h"
#include "cf_hdmi.h"
#include "xil_io.h"
#include "wrapper.h"
#include "edid.h"
#include "app_config.h"
Include dependency graph for transmitter.c:

Macros

#define TRANSMITTER_MODE_SWITCH_DELAY   500
 
#define TRANSMITTER_HOUSEKEEPING_DELAY   100
 

Functions

void transmitter_link_clkgen (struct axi_clkgen *clk_gen_handle)
 Link the transmitter clk_gen handler to the application one. More...
 
ATV_ERR ADIAPI_TransmitterInit (void)
 Initializes the transmitter. More...
 
void TRANSMITTER_SoftwareInit (void)
 Initializes the software parameters. More...
 
void TRANSMITTER_HardwareInit (void)
 Initializes the hardware of the transmitter. More...
 
ATV_ERR ADIAPI_TransmitterSetPowerMode (TRANSMITTER_POWER_MODE pwrmode)
 Sets the transmitter power mode. More...
 
ATV_ERR ADIAPI_TransmitterGetDetectedMode (TRANSMITTER_OPER_MODE *Mode)
 Gets the operating mode based on HDMI HPD and MSEN state. More...
 
ATV_ERR ADIAPI_TransmitterGetOperatingMode (TRANSMITTER_OPER_MODE *Mode)
 Gets the current system operating mode. More...
 
ATV_ERR ADIAPI_TransmitterSetOperatingMode (TRANSMITTER_OPER_MODE Mode)
 Sets the system operating mode. More...
 
void ADIAPI_TransmitterSetMuteMode (TRANSMITTER_OPER_MODE Mode)
 Sets the mute mode using the operating mode information. More...
 
void TRANSMITTER_MonitorAvrMode (void)
 Checks current AVR operating mode and notify application if mode changed. More...
 
ATV_ERR ADIAPI_TransmitterMain (void)
 Main function for polling mode operation. This function should be called periodically (at least every 100 ms). More...
 
void TRANSMITTER_Housekeeping (void)
 Performs TX housekeeping tasks. This function should be called periodically (at least every 100 ms) More...
 
ATV_ERR ADIAPI_TransmitterSetMuteState (void)
 This is the TX audio/video mute handling function. More...
 
UINT16 TRANSMITTER_Notification (TX_EVENT Ev, UINT16 Count, void *BufPtr)
 Performs the notification operations. More...
 
void TRANSMITTER_NewEdidSegment (UINT16 SegmentNum, UCHAR *SegPtr)
 Parse the new EDID segment and set the resolution and the pixel clock according to EDID data. More...
 

Variables

TRANSMITTER_OPER_PARAMS TransmitterParm
 
UCHAR MuteState
 
TRANSMITTER_TX_VARS TransmitterTxVars
 

Detailed Description

Copyright 2013(c) Analog Devices, Inc.

Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

  1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.
  2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.
  3. Neither the name of Analog Devices, Inc. nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

THIS SOFTWARE IS PROVIDED BY ANALOG DEVICES, INC. “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL ANALOG DEVICES, INC. BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

SVN Revision: $WCREV$

Macro Definition Documentation

◆ TRANSMITTER_HOUSEKEEPING_DELAY

#define TRANSMITTER_HOUSEKEEPING_DELAY   100

◆ TRANSMITTER_MODE_SWITCH_DELAY

#define TRANSMITTER_MODE_SWITCH_DELAY   500

Function Documentation

◆ ADIAPI_TransmitterGetDetectedMode()

ATV_ERR ADIAPI_TransmitterGetDetectedMode ( TRANSMITTER_OPER_MODE Mode)

Gets the operating mode based on HDMI HPD and MSEN state.

Parameters
Mode- operating mode.
Returns
Returns ATVERR_OK.
Here is the caller graph for this function:

◆ ADIAPI_TransmitterGetOperatingMode()

ATV_ERR ADIAPI_TransmitterGetOperatingMode ( TRANSMITTER_OPER_MODE Mode)

Gets the current system operating mode.

Parameters
Mode- operating mode.
Returns
Returns ATVERR_OK.

◆ ADIAPI_TransmitterInit()

ATV_ERR ADIAPI_TransmitterInit ( void  )

Initializes the transmitter.

Returns
Returns ATVERR_OK.

◆ ADIAPI_TransmitterMain()

ATV_ERR ADIAPI_TransmitterMain ( void  )

Main function for polling mode operation. This function should be called periodically (at least every 100 ms).

Main function for polling mode operation.

Returns
None.

◆ ADIAPI_TransmitterSetMuteMode()

void ADIAPI_TransmitterSetMuteMode ( TRANSMITTER_OPER_MODE  Mode)

Sets the mute mode using the operating mode information.

Parameters
Mode- operating mode.
Returns
None.

◆ ADIAPI_TransmitterSetMuteState()

ATV_ERR ADIAPI_TransmitterSetMuteState ( void  )

This is the TX audio/video mute handling function.

Returns
Returns ATVERR_OK.
Here is the caller graph for this function:

◆ ADIAPI_TransmitterSetOperatingMode()

ATV_ERR ADIAPI_TransmitterSetOperatingMode ( TRANSMITTER_OPER_MODE  Mode)

Sets the system operating mode.

Parameters
Mode- operating mode.
Returns
Returns ATVERR_OK.

◆ ADIAPI_TransmitterSetPowerMode()

ATV_ERR ADIAPI_TransmitterSetPowerMode ( TRANSMITTER_POWER_MODE  pwrmode)

Sets the transmitter power mode.

Parameters
pwrmode- transmitter power mode.
Returns
Returns ATVERR_OK.

◆ TRANSMITTER_HardwareInit()

void TRANSMITTER_HardwareInit ( void  )

Initializes the hardware of the transmitter.

Returns
None.
Here is the caller graph for this function:

◆ TRANSMITTER_Housekeeping()

void TRANSMITTER_Housekeeping ( void  )

Performs TX housekeeping tasks. This function should be called periodically (at least every 100 ms)

Returns
None.

◆ transmitter_link_clkgen()

void transmitter_link_clkgen ( struct axi_clkgen clk_gen_handle)

Link the transmitter clk_gen handler to the application one.

Parameters
[in]clk_gen_handle- Pointer to the clk_axi_clkgen handle.
Returns
void

◆ TRANSMITTER_MonitorAvrMode()

void TRANSMITTER_MonitorAvrMode ( void  )

Checks current AVR operating mode and notify application if mode changed.

Returns
None.
Here is the caller graph for this function:

◆ TRANSMITTER_NewEdidSegment()

void TRANSMITTER_NewEdidSegment ( UINT16  SegmentNum,
UCHAR SegPtr 
)

Parse the new EDID segment and set the resolution and the pixel clock according to EDID data.

Parse the new EDID segment.

Parameters
SegmentNum- Segment number.
SegPtr- Segment pointer.
Returns
None.
Here is the caller graph for this function:

◆ TRANSMITTER_Notification()

UINT16 TRANSMITTER_Notification ( TX_EVENT  Ev,
UINT16  Count,
void *  BufPtr 
)

Performs the notification operations.

Returns
Returns 0.

◆ TRANSMITTER_SoftwareInit()

void TRANSMITTER_SoftwareInit ( void  )

Initializes the software parameters.

Returns
None.
Here is the caller graph for this function:

Variable Documentation

◆ MuteState

UCHAR MuteState

◆ TransmitterParm

TRANSMITTER_OPER_PARAMS TransmitterParm

◆ TransmitterTxVars

TRANSMITTER_TX_VARS TransmitterTxVars