📄 csl_pschwcontrol.c
字号:
/* ==========================================================================
* Copyright (c) Texas Instruments Inc, 2005
*
* Use of this software is controlled by the terms and conditions found
* in the license agreement under which this software has been supplied
* provided
* ==========================================================================
*/
/** @file csl_pscHwControl.c
*
* @brief File for functional layer of CSL API @a CSL_pscHwControl()
*
* Description
* - The @a CSL_pscHwControl() function definition & it's associated
* functions
* @date 5-June-2004
* @author Lawrence Ronk
*/
#include <csl_psc.h>
/*#include <cslr_sys_001.h>*/ /*Law: need to consier creating functional CSL for sys module. Hope just register CSL is sufficient for this simple module.*/
#include <csl_pscAux.h>
/*#include <csl_pscAux.h>*/
#pragma CODE_SECTION (CSL_pscHwControl, ".text:csl_section:psc");
/**
\brief Control PSC module
\param hPsc Pointer to the object that holds reference to the instance
of PSC requested
\param cmd Command to perform an operation on PSC
\param arg Arguments if any for the command
\return if success, \c CSL_SOK, else error code
\see
*/
CSL_Status CSL_pscHwControl ( CSL_PscHandle hPsc,
CSL_PscHwControlCmd cmd,
void *arg ) {
CSL_Status status = CSL_SOK;
switch (cmd){
case CSL_PSC_CMD_DSP_PWR_ON:
status = CSL_pscPdDspPwrOnOff(hPsc, CSL_PSC_PD_STATE_ON );
break;
case CSL_PSC_CMD_DSP_PWR_OFF:
status = CSL_pscPdDspPwrOnOff(hPsc, CSL_PSC_PD_STATE_OFF );
break;
case CSL_PSC_CMD_DSP_LRESET_ASSERT:
status = CSL_pscDspLocalReset(hPsc, cmd );
break;
case CSL_PSC_CMD_DSP_LRESET_DEASSERT:
status = CSL_pscDspLocalReset(hPsc, cmd );
break;
case CSL_PSC_CMD_MD_STATE_CFG:
status = CSL_pscMdStateCfg(hPsc, *((CSL_PscMdCfg *) arg) );
break;
case CSL_PSC_CMD_MD_STATE_CFG_ALL:
status = CSL_pscMdStateCfgAll(hPsc, (CSL_PscMdCfg *) arg );
break;
case CSL_PSC_CMD_MD_STATE_ENABLE:
status = CSL_pscMdStateSet(hPsc, (CSL_PscMdCfg *) arg, CSL_PSC_MD_STATE_ENABLE );
break;
case CSL_PSC_CMD_MD_STATE_DISABLE:
status = CSL_pscMdStateSet(hPsc, (CSL_PscMdCfg *) arg, CSL_PSC_MD_STATE_DISABLE );
break;
case CSL_PSC_CMD_MD_STATE_ENABLE_ALL:
status = CSL_pscMdStateSetAll(hPsc, (CSL_PscMdCfg *) arg, CSL_PSC_MD_STATE_ENABLE );
break;
case CSL_PSC_CMD_PD_INT_CFG:
status = CSL_pscPdIntCfg(hPsc, (*(CSL_PscPdCfg *) arg) );
break;
case CSL_PSC_CMD_PD_INT_CLR:
status = CSL_pscPdIntClr(hPsc, (CSL_PscPdList *) arg );
break;
case CSL_PSC_CMD_MD_INT_CFG:
status = CSL_pscMdIntCfg(hPsc, (*(CSL_PscMdCfg *) arg) );
break;
case CSL_PSC_CMD_MD_INT_CLR:
status = CSL_pscMdIntClr(hPsc, (CSL_PscMdList *) arg );
break;
case CSL_PSC_CMD_INT_EVAL:
status = CSL_pscIntEval(hPsc);
break;
default:
status = CSL_ESYS_INVCMD;
break;
}
return status;
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -