20240522解决给飞凌的OK3588-C开发板刷IPC方案报错ALSA lib confmisc.c:767:(parse_card) cannot find card ‘rockchipes83

20240522解决给飞凌的OK3588-C开发板刷IPC方案报错ALSA lib confmisc.c:767:(parse_card) cannot find card 'rockchipes8388'
2024/5/22 14:49


缘起:
LOG出现:【可能的原因,OK3588-C开发板没有IPC方案上的声卡驱动】
[audio.c][rkipc_aenc_init]:create aenc chn 0 success
ALSA lib confmisc.c:767:(parse_card) cannot find card 'rockchipes8388'
ALSA lib conf.c:4554:(_snd_config_evaluate) function snd_func_card_driver returned error: No such device
ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
ALSA lib conf.c:4554:(_snd_config_evaluate) function snd_func_concat returned error: No such device
ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name
ALSA lib conf.c:4554:(_snd_config_evaluate) function snd_func_refer returned error: No such device
ALSA lib conf.c:5033:(snd_config_expand) Evaluate error: No such device


1、无效的改动,关闭DTS:
Z:\RK3588_IPC_SDK\sysdrv\source\kernel\arch\arm64\boot\dts\rockchip\rk3588-nvr-demo.dtsi
// SPDX-License-Identifier: (GPL-2.0+ OR MIT)
/*
 * Copyright (c) 2021 Rockchip Electronics Co., Ltd.
 *
 */

#include "rk3588.dtsi"
#include "rk3588-nvr.dtsi"
#include "rk3588-rk806-single.dtsi"

/ {
    i2s0_sound: i2s0-sound {
        status = "disabled";
        compatible = "simple-audio-card";
        simple-audio-card,format = "i2s";
        simple-audio-card,mclk-fs = <256>;
        simple-audio-card,name = "rockchip,es8311";
        simple-audio-card,dai-link@0 {
            format = "i2s";
            cpu {
                sound-dai = <&i2s0_8ch>;
            };
            codec {
                sound-dai = <&es8311>;
            };
        };
    };


2、初步怀疑是RK3588的IPC方案在开机之后会运行一个IPC的监控daemon程序,就像行车记录仪一样,上电直接记录了。
找不到声卡,但是它又不停的调用,不会在找不到声卡的时候出错退出了!
可以直接在APP应用程序哪里关闭对声卡的调用!

viewpro@viewpro-ThinkBook-16-G5-IRH:~/RK3588_IPC_SDK$ 
viewpro@viewpro-ThinkBook-16-G5-IRH:~/RK3588_IPC_SDK$ find . -name audio.c
./project/app/rkipc/rkipc/src/rv1126_ipc_rkmedia/audio/audio.c
./project/app/rkipc/rkipc/src/rv1103_ipc/audio/audio.c
./project/app/rkipc/rkipc/src/rv1126_battery_ipc/audio/audio.c
./project/app/rkipc/rkipc/src/rv1126_ipc_rockit/audio/audio.c
./project/app/rkipc/rkipc/src/rk3588_ipc/audio/audio.c
./project/app/rkipc/rkipc/src/rv1106_battery_ipc_tuya/audio/audio.c
./project/app/rkipc/rkipc/src/rv1106_ipc/audio/audio.c
./project/app/rkipc/rkipc/src/rk3588_multi_ipc/audio/audio.c

./project/app/rkipc/rkipc/src/rv1106_battery_ipc_client/audio/audio.c
./sysdrv/source/kernel/sound/usb/caiaq/audio.c
./sysdrv/source/kernel/drivers/usb/gadget/legacy/audio.c
viewpro@viewpro-ThinkBook-16-G5-IRH:~/RK3588_IPC_SDK$ 
viewpro@viewpro-ThinkBook-16-G5-IRH:~/RK3588_IPC_SDK$ 


很容易发现是在这两个APP应用中,单摄像头方案应该是rk3588_ipc。
当然,为了保险起见,将rk3588_multi_ipc也同步修改了!
./project/app/rkipc/rkipc/src/rk3588_ipc/audio/audio.c
./project/app/rkipc/rkipc/src/rk3588_multi_ipc/audio/audio.c

直接注释掉:
rkipc_audio_init();
rkipc_audio_deinit();


int main(int argc, char **argv) {
    LOG_INFO("main begin\n");
    signal(SIGINT, sig_proc);

    rkipc_get_opt(argc, argv);
    LOG_INFO("rkipc_ini_path_ is %s, rkipc_iq_file_path_ is %s, rkipc_log_level "
             "is %d\n",
             rkipc_ini_path_, rkipc_iq_file_path_, rkipc_log_level);

    // init
    rk_param_init(rkipc_ini_path_);
    rk_system_init();
    rkipc_camera_id_ = rk_param_get_int("video.source:camera_id", 0); // need rk_param_init
    rk_isp_init(rkipc_camera_id_, rkipc_iq_file_path_);
    rk_isp_set_frame_rate(0, rk_param_get_int("isp.0.adjustment:fps", 30));
    RK_MPI_SYS_Init();
    rk_video_init();
    
    if (rk_param_get_int("audio.0:enable", 0))
    {
        //rkipc_audio_init();
        LOG_ERROR("2024/5/21 18:02 wenyuan close the Audio!!!!\n");
    }
    
    rkipc_server_init();
    rk_storage_init();

    while (g_main_run_) {
        usleep(1000 * 1000);
    }

    // deinit
    rk_storage_deinit();
    rkipc_server_deinit();
    rk_system_deinit();
    
    if (rk_param_get_int("audio.0:enable", 0))
    {
        //rkipc_audio_deinit();
        LOG_ERROR("2024/5/21 18:02 wenyuan close the Audio!!!!\n");
    }
    rk_video_deinit();
    RK_MPI_SYS_Exit();
    rk_isp_deinit(rkipc_camera_id_);
    rk_param_deinit();

    return 0;
}

  • 10
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值