📄 csl_vpssgethwstatus.c
字号:
/* ==========================================================================
* Copyright (c) Texas Instruments Inc , 2004
*
* Use of this software is controlled by the terms and conditions found
* in the license agreement under which this software has been supplied
* priovided
* ==========================================================================
*/
/** \file csl_vpssGetHwStatus.c
*
* \brief File for functional layer of CSL API \a CSL_vpssGetHwStatus()
*
* \date 25th October, 2004
* \author Vignesh LA
*/
#include <csl_vpss.h>
#pragma CODE_SECTION (CSL_vpssGetHwStatus, ".text:csl_section:vpss");
/**
\brief Get VPSS status
\param hVpss Pointer to the object that holds reference to the instance
of VPSS requested
\param query The query to this API which indicates the status/setup to
be returned
\param response Pointer to query response object
\return if success, \c CSL_SOK, else error code
\see
*/
CSL_Status CSL_vpssGetHwStatus ( CSL_VpssHandle hVpss,
CSL_VpssHwStatusQuery query,
void *response ) {
CSL_Status status = CSL_SOK;
switch (query) {
case CSL_VPSS_QUERY_REV_ID:
/* Get the Peripheral ID, class and Rev. number */
((CSL_VpssRevStatus *)response)->peripheralID = CSL_FEXT ( hVpss->regs->PID, VPSS_PID_TID );
((CSL_VpssRevStatus *)response)->classID = CSL_FEXT ( hVpss->regs->PID, VPSS_PID_CID );
((CSL_VpssRevStatus *)response)->revNum = CSL_FEXT ( hVpss->regs->PID, VPSS_PID_PREV );
break;
case CSL_VPSS_QUERY_WBL_OVERFLOW:
(*((Uint32 *)response)) = hVpss->regs->PCR & 0x00FF0000;
break;
case CSL_VPSS_QUERY_CCDC_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_CCDC_WBL_O);
break;
case CSL_VPSS_QUERY_PRV_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_PRV_WBL_O);
break;
case CSL_VPSS_QUERY_RSZ1_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_RSZ1_WBL_O);
break;
case CSL_VPSS_QUERY_RSZ2_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_RSZ2_WBL_O);
break;
case CSL_VPSS_QUERY_RSZ3_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_RSZ3_WBL_O);
break;
case CSL_VPSS_QUERY_RSZ4_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_RSZ4_WBL_O);
break;
case CSL_VPSS_QUERY_AF_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_AF_WBL_O);
break;
case CSL_VPSS_QUERY_AEW_WBL_OVERFLOW:
(*((Uint8 *)response)) = CSL_FEXT ( hVpss->regs->PCR, VPSS_PCR_AEW_WBL_O);
break;
default:
status = CSL_ESYS_INVQUERY;
break;
};
return(status);
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -