Hi,
I had used dp1_aux (pin:A34 A35) connecting an i2c device(bmi160) for HW configuration.
i reference https://devtalk.nvidia.com/default/topic/1025490/jetson-tx2/uses-i2c6-dp0_aux_ch-/1
to edit tegra186-quill-p3310-c03-00-base.dts
host1x {
nvdisplay@15200000 {
status = "okay";
};
nvdisplay@15210000 {
status = "disabled";
};
sor1 {
status = "disabled";
hdmi-display {
status = "disabled";
};
dp-display {
status = "disabled";
};
};
dsi {
status = "okay";
panel-t-wuxga-8-0 {
status = "okay";
};
};
dpaux@15040000 {
compatible = "nvidia,tegra186-dpaux1-padctl";
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&dpaux_default1>;
dpaux_default1: pinmux@0 {
dpaux1_pins {
pins = "dpaux1-1";
function = "i2c";
};
};
};
dpaux@155c0000 {
compatible = "nvidia,tegra186-dpaux-padctl";
status = "okay";
pinctrl-names = "default";
pinctrl-0 = <&dpaux_default>;
dpaux_default: pinmux@0 {
dpaux0_pins {
pins = "dpaux-0";
function = "i2c";
};
};
};
};
dpaux0 {
status = "okay";
};
dpaux1 {
status = "okay";
};
and edit tegra186-soc-base.dtsi
dpaux@15040000 {
///compatible = "nvidia,tegra186-dpaux1";
compatible = "nvidia,tegra186-dpaux1-padctl";
reg = <0x0 0x15040000 0x0 0x00040000>;
interrupts = <0 160 0x4>; /* INT_DPAUX_1 */
clocks = <&clk32k_in>,
<&tegra_car TEGRA186_CLK_DPAUX1>,
<&tegra_car TEGRA186_CLK_PLLDP>;
clock-names = "clk32k_in", "dpaux1", "plldp";
resets = <&tegra_car TEGRA186_RESET_DPAUX1>;
reset-names = "dpaux1";
///power-domains = <&disa_pd>;
///status = "disabled";
status = "disabled";
};
and add my sensor device in tegra186-super-module-e2614-p2597-1000-a00.dtsi
i2c@3190000 {
bmi160@69 {
compatible = "bosch-sensortec,bmi160";
reg = <0x69>;
};
};
but i get the error message when kernel boot, and can not enter to system.
how to setting the i2c4 can it work?
[ 6.437423] tegra-i2c 3190000.i2c: pio xfer timed out addr: 0x69
[ 6.447592] tegra-i2c 3190000.i2c: — register dump for debugging ----
[ 6.458375] tegra-i2c 3190000.i2c: I2C_CNFG - 0x22c00
[ 6.467604] tegra-i2c 3190000.i2c: I2C_PACKET_TRANSFER_STATUS - 0x10001
[ 6.478440] tegra-i2c 3190000.i2c: I2C_FIFO_CONTROL - 0xe0
[ 6.488157] tegra-i2c 3190000.i2c: I2C_FIFO_STATUS - 0x800040
[ 6.498270] tegra-i2c 3190000.i2c: I2C_INT_MASK - 0x7d
[ 6.507722] tegra-i2c 3190000.i2c: I2C_INT_STATUS - 0x0
[ 6.517265] tegra-i2c 3190000.i2c: i2c transfer timed out addr: 0x69
[ 8.529454] tegra-i2c 3190000.i2c: pio xfer timed out addr: 0x69
[ 8.538186] tegra-i2c 3190000.i2c: — register dump for debugging ----
[ 8.547434] tegra-i2c 3190000.i2c: I2C_CNFG - 0x22c00
[ 8.558035] tegra-i2c 3190000.i2c: I2C_PACKET_TRANSFER_STATUS - 0x10001
[ 8.567195] tegra-i2c 3190000.i2c: I2C_FIFO_CONTROL - 0xe0
[ 8.575217] tegra-i2c 3190000.i2c: I2C_FIFO_STATUS - 0x800040
[ 8.583472] tegra-i2c 3190000.i2c: I2C_INT_MASK - 0x7d
[ 8.591095] tegra-i2c 3190000.i2c: I2C_INT_STATUS - 0x0
[ 8.598795] tegra-i2c 3190000.i2c: i2c transfer timed out addr: 0x69
[ 10.605495] tegra-i2c 3190000.i2c: pio xfer timed out addr: 0x69