1. i2c设备树插件修改

野火imx6ull提供了很多的设备树插件源码,若想要添加或修改不同的引脚作为i2c总线的引脚, 可参考:

仓库中提供了i2c1,i2c2的设备树插件, 其中i2c1的设备树插件文件为 imx-fire-i2c1-overlay.dts ,源码如下所示

/arch/arm/boot/dts/overlays/ebf/imx-fire-i2c1-overlay.dts
 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
/dts-v1/;
/plugin/;
#include "imx6ul-pinfunc.h"

/ {
   fragment@0 {
      target = <&i2c1>;
      __overlay__ {
         clock-frequency = <100000>;
         pinctrl-names = "default";
         pinctrl-0 = <&pinctrl_i2c1>;
         status = "okay";
         #address-cells = <1>;
         #size-cells = <0>;
      };
   };

   fragment@1{
      target = <&iomuxc>;
      __overlay__ {
         pinctrl_i2c1: i2c1grp {
            fsl,pins = <
               MX6UL_PAD_UART4_TX_DATA__I2C1_SCL 0x4001b8b0
               MX6UL_PAD_UART4_RX_DATA__I2C1_SDA 0x4001b8b0
            >;
         };
      };
   };
};

i2c设备树插件修改相对简单,若想修改其他具有i2c功能的引脚,只需修改设备树插件的第23-24行即可。