搜索
 找回密码
 立即注册

简单一步 , 微信登陆

apollo架构中查看mi中GPIO的控制

作者:Jie2239342693 | 时间:2022-5-17 10:22:55 | 阅读:3036| 只看该作者
以IR LED GPIO为例
1. 查看board.ini的配置
//id对应的值是E_MI_SYS_BOARD_INFO_ID_GPIO_LED_CTL的值,,PAD_NO是GPIO的实际number

BOARD_GPIO_18_ID = 0x326; #E_MI_SYS_BOARD_INFO_ID_GPIO_LED_CTLBoard_GPIO_18_INVERTOR = 0Board_GPIO_18_PAD_NO = 5; #PAD_PWM_PM
2. 加载board.ini
///vendor/mediatek/proprietary_tv/apollo/linux_core/misdk/mi/mi/modules/sys/src/mi_sys_cfg.c

static MI_BOOL _MI_SYS_CfgLoadAndSetBoardInfo(void)
{
....
    //加载BOARD_GPIO_SETTING:BOARD_GPIO_NUM
    u8GpioNum = _INIPARSER_GET_INT(_pstBoardCfgIni, "BOARD_GPIO_SETTING:BOARD_GPIO_NUM", 0);
    //将GPIO的单独配置加载到pstMiConfigData->astGpioColl
    for (u8Num = 0; u8Num < u8GpioNum; u8Num++)
    {
        if (pszKey != NULL)
        {
            _SNPRINTF((char *)pszKey, MI_SYS_CONFIG_KEYNAME_LEN, "BOARD_GPIO_SETTING:BOARD_GPIO_%d_ID", u8Num);
            _pstMiConfigData->astGpioColl[u8Num].eId = _INIPARSER_GET_INT(_pstBoardCfgIni, pszKey, 0);
            _SNPRINTF((char *)pszKey, MI_SYS_CONFIG_KEYNAME_LEN, "BOARD_GPIO_SETTING:Board_GPIO_%d_INVERTOR", u8Num);
            _pstMiConfigData->astGpioColl[u8Num].u8Invertor = _INIPARSER_GET_INT(_pstBoardCfgIni, pszKey, 0);
            _SNPRINTF((char *)pszKey, MI_SYS_CONFIG_KEYNAME_LEN, "BOARD_GPIO_SETTING:Board_GPIO_%d_PAD_NO", u8Num);
            _pstMiConfigData->astGpioColl[u8Num].u32PadNo = _INIPARSER_GET_INT(_pstBoardCfgIni, pszKey, 0);
        }
    }
}

3. 配置NameId
//vendor/mediatek/proprietary_tv/apollo/linux_core/misdk/mi/mi/modules/gpio/src/mi_gpio.c
static MI_RESULT _MI_GPIO_ConfigGpioInfo(void)
{
....
case E_MI_SYS_BOARD_INFO_ID_GPIO_LED_CTL:
                            _astGpioInfo[u16Count].eNameId = E_MI_GPIO_NAME_LED_CTL;
....
}


4. 实际调用
//vendor/mediatek/proprietary_tv/apollo/linux_core/misdk/mi/mi/modules/dispout/src/mi_dispout.c
//通过step3配置的NameId获取GPIO的配置,所以查找这个NameId就可以看到有哪些调用
mi_gpio_GetGpioNumByName(E_MI_GPIO_NAME_LED_CTL, &(_astPanelInfo[u32PortIndex].u16LedPadNo)))


收藏
收藏0
分享
分享
点赞
点赞0
反对
反对0
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

热门问答

更多>
点击,跳转商城咨询客服
手机版