
#ifndef _SVE_API_H_
#define _SVE_API_H_

#include <SVEDriverAPI.h>
/*
typedef struct _tDevInfo
{
    DISP_VIDOUT_MODE VideoOutMode;
    DISP_RGBIFOUT_MODE RGBOutMode;
    unsigned int uiWidth;
    unsigned int uiHeight;
    unsigned int VBPD_Value;
    unsigned int VFPD_Value;
    unsigned int VSPW_Value;
    unsigned int HBPD_Value;
    unsigned int HFPD_Value;
    unsigned int HSPW_Value;
    unsigned int VCLK_Polarity;
    unsigned int HSYNC_Polarity;
    unsigned int VSYNC_Polarity;
    unsigned int VDEN_Polarity;
    unsigned int PNR_Mode;
    unsigned int VCLK_Source;
    unsigned int Frame_Rate;
    unsigned int VCLK_Direction;
    //unsigned int VCLK_Value;
} tDevInfo;
*/
typedef struct _tRGBIFInfo
{
    DISP_RGBIFOUT_MODE RGBOutMode;
    unsigned int MIPIDSIen;
    unsigned int RGBEvenOrder;
    unsigned int RGBOddOrder;
    unsigned int uiWidth;
    unsigned int uiHeight;
    unsigned int VBPD_Value;
    unsigned int VFPD_Value;
    unsigned int VSPW_Value;
    unsigned int HBPD_Value;
    unsigned int HFPD_Value;
    unsigned int HSPW_Value;
    unsigned int VCLK_Polarity;
    unsigned int HSYNC_Polarity;
    unsigned int VSYNC_Polarity;
    unsigned int VDEN_Polarity;
    unsigned int VCLK_Source;
    unsigned int Frame_Rate;
    unsigned int VCLK_Direction;
    unsigned int VCLK_Gate;
    unsigned int RGBSkipEn;
    unsigned int RGBDummy;
    unsigned int PixelCompensation;
}tRGBIFInfo;
/*
typedef struct _tI80IFInfo
{
    unsigned int LDIOutMode;
    unsigned int MIPIDSIen;
    unsigned int VCLK_Source;
    unsigned int VCLK_Division;
    unsigned int uiCSsetup;
    unsigned int uiWRsetup;
    unsigned int uiWRact;
    unsigned int uiWRhold;
    unsigned int RS_Polarity;
    unsigned int uiFrameSkip;
    unsigned int uiAutoCmdRate;
}tI80IFInfo;

typedef struct _tITU601IFInfo
{
    unsigned int SEL_VSYNC_Mode;
    unsigned int uiDelayVSyncClkNum;
    unsigned int VEN_HREF_Polarity;
    unsigned int VEN_VSYNC_Polarity;
    unsigned int VEN_HSYNC_Polarity;
    unsigned int VEN_FIELD_Polarity;
    unsigned int VEN_CLK_Polarity;
}tITU601IFInfo;

typedef struct _tITU656IFInfo
{
    unsigned int FIELD_Polarity;
    unsigned int CLK_Polarity;
}tITU656IFInfo;

typedef struct _tITUIFInfo
{
    unsigned int En601En656;
    unsigned int TVformat;
    unsigned int OrdYC;
    unsigned int OrdCbCr;
    union
    {
        tITU601IFInfo ITU601INFO;
        tITU656IFInfo ITU656INFO;
    };
}tITUIFInfo;
*/
typedef struct _tDevInfo
{
    DISP_VIDOUT_MODE VideoOutMode;
    union
    {
        tRGBIFInfo RGBINFO;
        //tI80IFInfo I80INFO;
        //tITUIFInfo ITUINFO;
    };
} tDevInfo;

typedef struct    // IOCTL_SVE_FIMD_SET_INTERFACE_PARAM
{
    //tDevInfo tRGBDevInfo;            // RGB I/F Device Information
    tDevInfo tDispDevInfo;         // Display Device Information
} SVEARG_FIMD_OUTPUT_IF;

//#define USE_REGISTRY_VIDMEM_VIDSIZE

#endif    // _SVE_API_H_

