Поскольку вы используете ARM, вы можете определить скорость I2C во время загрузки в devicetree .
Здесь я делаю некоторые предположения (например, что вы используете U-boot в качестве загрузчика), но встроенные системы имеют тенденцию выглядеть очень похоже.
- Найдите свое божественное древо. Он указывается при загрузке и, вероятно, находится в / boot /
(Вы также можете ввести printenv в оболочке U-boot и найти переменную с именем devicetree)
Разобрать Ваш devicetree в формате dts (устройство-дерево-источник)
Измените параметр скорости i2c (найдите «i2c» и «тактовая частота»).
тактовая частота = ; "
- Скомпилируйте его обратно в * .dtb (устройство-дерево-блоб) и сохраните его как my_devicetree.dtb в / boot /
при следующей перезагрузке, в меню загрузчика выберите my_devicetree.dtb как devicetree-file , и оно должно работать.