-
-
- Posts: 5
- Joined: 2024-10-26 6:58
我希望
使用脚本
修改i2c的速度
我的dtb文件如下:
Code: Select all
/dts-v1/;
/plugin/;
&i2c3{
status = "okay";
clock-frequency = <500000>;
pinctrl-0 = <&i2c3m1_xfer>;
};
我的脚本如下:
Code: Select all
nano i2c3_speed_overlay.dts
dtc -I dts -O dtb i2c3_speed_overlay.dts -o i2c3_speed_overlay.dtb
cat i2c3_speed_overlay.dtb > /sys/kernel/config/device-tree/overlays/i2c3m1/dtbo
echo 1 >/sys/kernel/config/device-tree/overlays/i2c3m1/status
但是报如下错误:
Code: Select all
[147101.564062] OF: resolver: no symbols in root of device tree.
[147101.564123] OF: resolver: overlay phandle fixup failed: -22
[147101.564160] dtbocfg_overlay_item_create: Failed to apply overlay (ret_val=-22)
原设备树如下:
Code: Select all
/**********I2C**********/
/* I2C3_M1 */
&i2c3 {
status = "disabled";
clock-frequency = <100000>;
};
我不知道哪里出现错误,尝试将i2c3更换成i2c3m1也不行
-
- Posts: 129
- Joined: 2024-10-10 1:11
zg002 wrote: ↑2024-10-28 15:17
我希望
使用脚本
修改i2c的速度
我的dtb文件如下:
Code: Select all
/dts-v1/;
/plugin/;
&i2c3{
status = "okay";
clock-frequency = <500000>;
pinctrl-0 = <&i2c3m1_xfer>;
};
我的脚本如下:
Code: Select all
nano i2c3_speed_overlay.dts
dtc -I dts -O dtb i2c3_speed_overlay.dts -o i2c3_speed_overlay.dtb
cat i2c3_speed_overlay.dtb > /sys/kernel/config/device-tree/overlays/i2c3m1/dtbo
echo 1 >/sys/kernel/config/device-tree/overlays/i2c3m1/status
但是报如下错误:
Code: Select all
[147101.564062] OF: resolver: no symbols in root of device tree.
[147101.564123] OF: resolver: overlay phandle fixup failed: -22
[147101.564160] dtbocfg_overlay_item_create: Failed to apply overlay (ret_val=-22)
原设备树如下:
Code: Select all
/**********I2C**********/
/* I2C3_M1 */
&i2c3 {
status = "disabled";
clock-frequency = <100000>;
};
我不知道哪里出现错误,尝试将i2c3更换成i2c3m1也不行
您好,您不能直接使用别名,您需要参考/tmp/.fdt_dump.txt中的节点名称。例如i2c3,您应该取成这样:
Code: Select all
/dts-v1/;
/plugin/;
&{/i2c@ff460000}{
status="okay";
clock-frequency = <100000>;
};