/**
 * @file hv_drv_vbo_tx.h
 * @brief Header file of Factory module.
 *
 * @verbatim
 * ==============================================================================
 *                        ##### How to use #####
 * ==============================================================================
 *
 * @endverbatim
 *
 * @author HiView SoC Software Team
 * @version 0.0.0
 * @date 2022-09-03
 */

#ifndef _HV_DRV_VBO_TX_H_
#define _HV_DRV_VBO_TX_H_
#include "hv_comm_DataType.h"
#include "hv_cal_KtxCommon.h"
#include "hv_comm_Define.h"

/**
 * @brief VboTx Init.
 * @param[in] pstVboPanelParam Panel Param.
 * @return 0: Success or other: Fail.
 */
Status VboTxPreInit(const PanelParam *pstPanelParam);

/**
 * @brief VboTx Init for Middle to recall.
 */
VOID Hv_Drv_VboTX_Init(const PanelParam *pstPanelParam);

/**
 * @brief Load VBO Panel param for Middle to recall.
 * @param[in] bEn TURE: open HV_FALSE: Closed.
 * @return 0: Success or other: Fail.
 */
//VOID Hv_Drv_VBO_TX_LoadVboPanelParam(VOID);

/**
 * @brief VboTx phy pif and Mac enable.
 * @param[in] bEn 1: open 0: Closed.
 */
VOID Hv_Drv_VboTx_Enable(BOOL bEn);

/**
 * @brief Get VBO Lockn Status.
 * @return HV_TRUE: lock or HV_FALSE: unlock.
 */
Status Hv_Drv_VboTx_GetVboLocknStatus(VOID);

/**
 * @brief vbo panel init.
 * @return HV_TRUE: success or HV_FALSE: fail.
 */
VOID HV_Drv_Panel_Init(PanelControl* pstPanelControl);

/**
 * @brief get panel exist.
 */
BOOL Hv_Drv_VboTx_CheckPanelExist(VOID);


#endif
