📄 socslaveconfig.c
字号:
/*******************************************************************************
Module SocSlaveConfig
Name SocSlaveConfig.c
********************************************************************************
CopyRight Hisense
Company Hisense
Department SoftWare
Group HS2503
Developer MaWeizhuo
Version 1.0
Open 20090107
Close 200YMMDD
Mender XXX
Amend Version X.Y
Amend Time YYYYMMDD
********************************************************************************
*******************************************************************************/
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////// //////
//////include files //////
////// //////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
#include "SocSlaveConfig.h"
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////// //////
//////include files //////
////// //////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
//////--------------------------------------------------------------------//////
//////--------------------------------------------------------------------//////
//////--------------------------------------------------------------------//////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////// //////
//////SocPage操作函数开始 //////
////// //////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
tWord FAR GetPageIndex(
IN tByte aPageAddress
)
{
tWord wPageIndex ;
if( aPageAddress < REG_PAGE_ADDR_HDMI +HDMI_PAGE_LENGTH )
{
wPageIndex = REG_PAGE_INDEX_HDMI ; //PageAddr为0x00-0x07的HDMI寄存器
}
else if( REG_PAGE_ADDR_OSD_CLUT <= aPageAddress && aPageAddress < REG_PAGE_ADDR_OSD_CLUT + OSD_CLUT_PAGE_LENGTH )
{
wPageIndex = REG_PAGE_INDEX_OSD_CLUT ; //PageAddr为0x08-0x0B的OSD_CLUT寄存器
}
else if( REG_PAGE_ADDR_GAMMA_LUT_R <= aPageAddress && aPageAddress < REG_PAGE_ADDR_GAMMA_LUT_R + GAMMA_CLUTR_PAGE_LENGTH )
{
wPageIndex = REG_PAGE_INDEX_GAMMA_LUT_R ; //PageAddr为0x0C,0x0D的GAMMA_CLUTR寄存器
}
else if( REG_PAGE_ADDR_GAMMA_LUT_G <= aPageAddress && aPageAddress < REG_PAGE_ADDR_GAMMA_LUT_G + GAMMA_CLUTG_PAGE_LENGTH )
{
wPageIndex = REG_PAGE_INDEX_GAMMA_LUT_G ; //PageAddr为0x0E,0x0F的GAMMA_CLUTG寄存器
}
else if( REG_PAGE_ADDR_GAMMA_LUT_B <= aPageAddress && aPageAddress < REG_PAGE_ADDR_GAMMA_LUT_B + GAMMA_CLUTB_PAGE_LENGTH )
{
wPageIndex = REG_PAGE_INDEX_GAMMA_LUT_B ; //PageAddr为0x10,0x11的GAMMA_CLUTB寄存器
}
else if( REG_PAGE_ADDR_REF_BLOCK == aPageAddress )
{
wPageIndex = REG_PAGE_INDEX_REF_BLOCK ; //PageAddr为0x12的CPU_REG寄存器
}
else if( REG_PAGE_ADDR_DEC == aPageAddress )
{
wPageIndex = REG_PAGE_INDEX_DEC ; //PageAddr为0x13的DEC_REG寄存器
}
else if( REG_PAGE_ADDR_OSD == aPageAddress )
{
wPageIndex = REG_PAGE_INDEX_OSD ; //PageAddr为0x14的OSD_REG寄存器
}
else if( REG_PAGE_ADDR_FRONTEND == aPageAddress )
{
wPageIndex = REG_PAGE_INDEX_FRONTEND ; //PageAddr为0x15的FRONTEND_REG寄存器
}
else if( REG_PAGE_ADDR_BACKEND == aPageAddress )
{
wPageIndex = REG_PAGE_INDEX_BACKEND ; //PageAddr为0x16的BACKEND_REG寄存器
}
//20081202李云峰添加
else if( REG_PAGE_ADDR_AFE == aPageAddress )
{
wPageIndex = REG_PAGE_INDEX_AFE ; //PageAddr为0x16的BACKEND_REG寄存器
}
//20081202李云峰添加
else if( REG_PAGE_ADDR_TT_FIFO <= aPageAddress && aPageAddress < REG_PAGE_ADDR_TT_FIFO + TT_FIFO_PAGE_LENGTH )
{
wPageIndex = REG_PAGE_INDEX_TT_FIFO ; //PageAddr为0x3C-0x3F的TT_FIFO_REG寄存器
}
else if( 0xFE == aPageAddress )
{ //PageAddr出错
wPageIndex = MAX_REG_PAGE_NUMBER ;
}
else
{
wPageIndex = REG_PAGE_INDEX_ERROR ;
}
return wPageIndex ;
}
BOOL FAR OperationBreak(
IN const tWord aPageIndex,
IN const tDWord aAbsoluteAddress
)
{
BOOL bResult ;
bResult = FALSE ;
switch(aPageIndex)
{
case REG_PAGE_INDEX_HDMI :
{
if( aAbsoluteAddress > HDMI_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_OSD_CLUT :
{
if( aAbsoluteAddress > OSD_CLUT_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_GAMMA_LUT_R :
{
if( aAbsoluteAddress > GAMMA_CLUTR_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_GAMMA_LUT_G :
{
if( aAbsoluteAddress > GAMMA_CLUTG_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_GAMMA_LUT_B :
{
if( aAbsoluteAddress > GAMMA_CLUTB_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_REF_BLOCK :
{
if( aAbsoluteAddress > REF_BLOCK_REG_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_DEC :
{
if( aAbsoluteAddress > DEC_REG_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_OSD :
{
if( aAbsoluteAddress > OSD_REG_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_FRONTEND :
{
if( aAbsoluteAddress > FRONTEND_REG_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case REG_PAGE_INDEX_BACKEND :
{
if( aAbsoluteAddress > BACKEND_REG_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
//20081202李云峰添加
case REG_PAGE_INDEX_AFE :
{
if( aAbsoluteAddress > AFE_REG_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
//20081202李云峰添加
case REG_PAGE_INDEX_TT_FIFO :
{
if( aAbsoluteAddress > TT_FIFO_PAGE_MAX_ABSOLUTE_ADDRESS )
{
bResult = TRUE ;
}
}
break ;
case MAX_REG_PAGE_NUMBER :
{
bResult = FALSE ;
}
break ;
default:
{
bResult = TRUE ;
}
}
return bResult ;
}
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
////// //////
//////SocPage操作函数结束 //////
////// //////
////////////////////////////////////////////////////////////////////////////////
////////////////////////////////////////////////////////////////////////////////
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -