21nc

21nc

0个粉丝

1

问答

0

专栏

0

资料

21nc  发布于  2026-05-06 15:13:04
采纳率 0%
1个问答
44

SS928自编译sample_vio 运行失败,MIPI lane 配置报错

悬赏金¥ 33
问题最晚将于2026-05-13结题
   

我在调试 SS928V100 / 海鸥派 Euler Pi 的 IMX347 MIPI 摄像头,板端原版例程可以正常运行,但我用 SDK 重新编译 sample_vio 后运行失败。

环境

板子:海鸥派 Euler Pi / SS928V100 内存4G版
转接板:EULER_4SEN

烧录固件:openeuler_v1.1.1
SDK:SS928V100_SDK_V2.0.2.1
交叉编译器:aarch64-mix210-linux-gcc
板端原版例程路径:

/root/device_sample/mipi_vi/sample_vio
/root/device_sample/mipi_vi/scripts/init_imx347_4x2lan.sh

原版程序可以正常运行

板端执行:

cd /root/device_sample/mipi_vi
export LD_LIBRARY_PATH=/usr/lib:/usr/lib64
./scripts/init_imx347_4x2lan.sh
./sample_vio 6

可以正常启动,打印类似:

======> i2c:7 sensor:0
linear mode
==> IMX347 LANE_891MBPS_37MHZ
=== IMX347 Slave LINE Init OK! ===
ISP Dev 0 running !

说明硬件、摄像头、I2C7、初始化脚本应该是正常的。

自编译版本的问题

我在各种平台中下载到的 sample_vio.c 中,IMX347 菜单是:


在源码中./sample_vio 6被注释掉了且被注释前的菜单为

imx347 1080P:
(6) one sensor(i2c-2)
(7) one sensor(i2c-3) 
(8) one sensor(i2c-4) 
(9) one sensor(i2c-5) 
(10) four sensor`

但板端原版 ./sample_vio 6 实际走的是:

i2c:7 sensor:0

所以我把 case 6 改成 sample_vio_one_sensor1(7),并新增了 i2c_bus == 7 分支,配置大致如下:

const hi_vi_dev vi_dev = 0;
const hi_vi_pipe vi_pipe = 0;

sample_comm_vi_get_default_vi_cfg(sns_type, vi_cfg0);
vi_cfg0->sns_info.bus_id = 7;
vi_cfg0->sns_info.sns_clk_src = 0;
vi_cfg0->sns_info.sns_rst_src = 0;

sample_comm_vi_get_mipi_info_by_dev_id(sns_type, vi_dev, &vi_cfg0->mipi_info);
vi_cfg0->mipi_info.divide_mode = LANE_DIVIDE_MODE_3;
vi_cfg0->dev_info.vi_dev = vi_dev;
vi_cfg0->bind_pipe.pipe_id[0] = vi_pipe;
vi_cfg0->grp_info.fusion_grp_attr[0].pipe_id[0] = vi_pipe;

编译生成的程序确认是 ARM aarch64,上传板端后 -h 菜单也已经显示:

(6) one sensor(i2c-7)

但运行:

./sample_vio_i2c7_test 6

报错:

check_lane_id(134):
lane_id[1] 1 is invalid in hs_mode 3
check_mipi_dev_attr(490):
check_lane_id failed!
mipi_set_mipi_dev_attr(535):
check_mipi_dev_attr failed!
mipi_set_combo_dev_attr(604):
mipi set mipi attr failed!
mipi_rx_ioctl(901):
mipi set combo_dev attr failed!
[sample_comm_vi_start_mipi_rx]-967: mipi rx set combo attr failed!
[sample_comm_vi_start_vi]-1428: start mipi rx failed!
program exit abnormally!

之前另一个重编版本还遇到过:

vi set dev attr failed with 0xa0108018
  1. 海鸥派 / SS928V100 上 IMX347 单目 i2c-7 对应的正确 vi_dev / vi_pipe / mipi dev / lane_id / divide_mode / sns_clk_src / sns_rst_src 应该怎么配置?

  2. LANE_DIVIDE_MODE_3lane_id[1] 1 is invalid in hs_mode 3,是否说明 i2c-7 单目不能用这个 divide mode?应该用哪个 LANE_DIVIDE_MODE

  3. SDK 里的 sample_vio.c 是否和板端 /root/device_sample/mipi_vi/sample_vio 不是同一版?是否需要同步替换 sample/common 下的 sample_comm_vi.csample_comm_isp.c 等文件?哪里能找到固件内置sample_vio对应的源码?

我来回答
回答3个
时间排序
认可量排序

素质男孩最有素质

1个粉丝

0

问答

0

专栏

2

资料

素质男孩最有素质 2026-05-06 15:44:28
认可0

素质男孩最有素质

1个粉丝

0

问答

0

专栏

2

资料

素质男孩最有素质 2026-05-06 15:50:13
认可0

Sunshine

11个粉丝

2

问答

11

专栏

15

资料

Sunshine 2026-05-06 15:53:36
认可0

你现在的资料太老了,建议使用新的网盘资料,里面有sample,可以看看https://gitee.com/hieulerpi/SS928V100_SDK_V2.0.2.2_MPP_Sample

  1. 使用四路转接板 sensor是2lane的对应mipirx

  2. LANE_DIVIDE_MODE模式支持列表查看手册SS928 V100R001C02SPC022(Update)\ReleaseDoc\zh\01.software\board\MPP\MIPI 使用指南.pdf
或将文件直接拖到这里
悬赏:
E币
网盘
* 网盘链接:
* 提取码:
悬赏:
E币

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
+ 添加网盘链接/附件

Markdown 语法

  • 加粗**内容**
  • 斜体*内容*
  • 删除线~~内容~~
  • 引用> 引用内容
  • 代码`代码`
  • 代码块```编程语言↵代码```
  • 链接[链接标题](url)
  • 无序列表- 内容
  • 有序列表1. 内容
  • 缩进内容
  • 图片![alt](url)
举报反馈

举报类型

  • 内容涉黄/赌/毒
  • 内容侵权/抄袭
  • 政治相关
  • 涉嫌广告
  • 侮辱谩骂
  • 其他

详细说明

易百纳技术社区