【3519dv500】音频时钟源问题

一、问题描述

        测试过程中发现,海思SDK里面,Mipi tx配置好以后,就会导致音频的整个业务流程变慢,而且MIC音频没法正确编码,感觉整个时钟异常了,但是一直找不到文档描述那儿问题导致,而且发现reboot整个系统都没有用途,必须拔电重启系统才能正常工作;

二、问题排查

排查glibc musl两个版本SDK,发现都有问题.初步怀疑SDK bug,最后只能继续分析问题

1.硬件MIC和mipi vo基本没有任何关系,暂时无法排除

2.clock 章节没有共用时钟相关描述,查看AIAO相关寄存器都是正常的

3.排查audio api文档找到问题

三、解决办法

PDF文档描述如下:

【注意】
音频模块参数支持配置AIAO的时钟源属性。

● Hi3519DV500音频支持2个时钟源:基础时钟源和备用时钟源。

● 基础时钟源会带来更好的音频电性能。但是,当默认时钟源被其他模块(如
MIPI)使用时,此时需要切换到备用时钟源。
– Hi3519DV500默认使用基础时钟源;
● 该接口为整个音频系统的基础接口,该接口的调用必须在其他模块( AI/AO/
ACODEC/AENC/ADEC)的接口之前。

● Hi3519DV500支持该接口

/* Defines audio clksel type */
typedef enum {
    OT_AUDIO_CLK_SELECT_BASE = 0, /* Audio base clk. */
    OT_AUDIO_CLK_SELECT_SPARE,    /* Audio spare clk. */

    OT_AUDIO_CLK_SELECT_BUTT,
} ot_audio_clk_select;

/* Defines audio mode parameter. */
typedef struct {
    ot_audio_clk_select clk_select;
} ot_audio_mod_param;
td_s32 ret;
ot_audio_mod_param mod_param;
mod_param.clk_select = OT_AUDIO_CLK_SELECT_SPARE;
/* set audio mode parameter. */
ret = ss_mpi_audio_set_mod_param(&mod_param);
if (ret != TD_SUCCESS) {
    printf("set audio mode parameter fail: ERRPARAM(%d)\n", mod_param.clk_select);
    return ret;
}

修改为备用时钟源即可!!!

该问题卡了两个星期,做个简单的记录!多看文档!!!

  • 4
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱爬山的木木

佛系

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值