Camera点亮
HBN mipi sensor 点亮
范围
本章节概述了 RDK-S100 camera bring up 的过程,用于帮助读者快速了解并掌握 RDK-S100 camera 框架,如何快速的新增 camera 配置,并点亮 camera。
该部分内容以 RDK-S100 开发板 + imx219 camera
模组为例,进行配置讲解,其他硬件平台或者 camera 模组以实际情况为准。

准备工作
硬件资源:RDK-S100 开发板、camera 模组。
软件资源:系统 SDK、camera 驱动源码、sensor datasheet、sensor 的 initialize settings 等。
RDK-S100 开发板 camera 相关硬件资源如下:
| RDK-S100 | MIPI host | I2C | 管脚说明 | 管脚说明 | 其他 |
|---|---|---|---|---|---|
| RX0 可接 imx219 模组 | 0 4 lane | 1 | SPI1_CSN0 gpio_number:502 | 可通过拨码开关进行选择 • LPWM0_DOUT0 gpio_number:456 • mclk 24Mhz | 注意: imx219 模组本身外接 24M 晶振,所以不需要 SOC 端输出 mclk 注意:拨码开关决定输出 I2C/GPIO 电平 1.8V 还是 3.3V。 注意:拨码开关决定输出是 LPWM还是 24M mclk。 |
| RX1 可接 imx219 模组 | 1 4 lane | 2 | SD_WPROT gpio_number:494 | 可通过拨码开关进行选择 • LPWM0_DOUT1 gpio_number:457 • mclk 24Mhz | 注意: imx219 模组本身外接 24M 晶振,所以不需要 SOC 端输出 mclk 注意:拨码开关决定输出 I2C/GPIO 电平 1.8V 还是 3.3V。 注意:拨码开关决定输出是 LPWM还是 24M mclk。 |
| RX4 用于接 serdes | 4 4 lane | 3 | poc EN: gpio_number:433 poc INT: gpio_number:506 | 解串器 PWDNB: gpio_number:452 | 解串器 max96712, addr: 0x29 poc max20087, addr: 0x28 |
硬件连接示意图:

RX0 和 RX1 对应拨码开关示意图:

添加新 sensor 点亮步骤
RDK-S100 平台进行新硬件和新 camera 适配时,需要修改平台设备树 dts,camera 驱动库及相关配置文件即可,系统库一般无需改动。
dts 修改
sensor gpio 配置
确保新硬件使用的 sensor gpio 在 drobot-s100-pinctrl.dtsi --> pinctrl_video --> video_gpio节点中有配置,这样在开机启动时,系统才会将对应的 pin 设置为 gpio,用户程序方可以操作 pin。

vcon 是 RDK-S100 camera 用于管理 sensor 硬件相关的 dts 节点,如果 sensor 需要对应的时序才能正常启动,则需要在该节点中配置对应的 gpio。请根据硬件连接的实际情况配置,该相关信息可以从原理图及 pin list 中获取。
// dts: 在对应 vcon node 中设置 gpio,注意 vcon 端口号与 mipi rx 端口号 一 一对应
// vcon0 -- RX0
// ....
// vcon3 -- RX3
&vin_vcon0 {
bus = <2>;
gpio_poc = <0>;
gpio_des = <0>;
sensor_err = <0>;
//gpio_oth = <444 445>; // imx219 无需配置,所以这里是注释掉,为空
lpwm_chn = <0 1 2 3>;
rx_phy = <2 0>;
};
sensor i2c 配置
I2C bus number 需要在 dts vcon 中与 MIPI RX 端口进行绑定,请根据硬件连接的实际情况配置,该相关信息可以从原理图中获取。
// 在对应 vcon 中设置 i2c bus,如 RX0 设置 I2C2
&vin_vcon0 {
bus = <2>;
gpio_poc = <0>;
gpio_des = <0>;
sensor_err = <0>;
lpwm_chn = <0 1 2 3>;
rx_phy = <2 0>;
};
mclk 配置
RDK-S100 底座硬件暂时不支持 SOC 输出的 mclk 连接到 sensor 模组,目前只支持外带晶振的模组。
dts 修改验证
一般 dts 配置正确,硬件正确连接后,保证 sensor 供电及 mclk 正常 ,便可以使用 i2cdetect 检测到模组的 i2c 地址。 通过 echo 命令进行控制 sensor 上电或者 reset (注:该说明使用 imx219模组无需操作 gpio)
echo 502 > /sys/class/gpio/export
echo out > /sys/class/gpio/gpio502/direction
echo 1 > /sys/class/gpio/gpio502/value
echo 502 > /sys/class/gpio/unexport
使用 i2cdetect 检测 sensor i2c地址。如果检测到正确的地址,如下图所示,则表示 dts 配置正确,否则需要检查dts 配置。
![]() | ![]() |
|---|

