Usage of i2c_-Tools in Barebox

Sascha Hauer s.hauer at pengutronix.de
Thu May 21 23:41:08 PDT 2015


On Wed, May 20, 2015 at 08:34:23AM +0200, Marcel Behlau wrote:
> Hi,
> 
> i found the problem. The Pad Mux Register (0x20E008C and 0x20E0090)
> are not initialised. In both registers is a 0x00000005 (reset
> value), instead of 0x00000016. I think, i must specify the value of
> the mux register in the device tree, too. How can i do this?

You have to add a pinctrl node, like this:

&iomuxc {
	imx6s-riotboard {
		pinctrl_i2c1_2: i2c1grp-2 {
			fsl,pins = <
				MX6QDL_PAD_EIM_EB2__I2C2_SCL 0x4001b8b1
				MX6QDL_PAD_EIM_D16__I2C2_SDA 0x4001b8b1
			>;
		};
	};
};

...

&i2c1 {
	pinctrl-0 = <&pinctrl_i2c1_2>;
};

See dts/Bindings/pinctrl/fsl,imx-pinctrl.txt and
dts/Bindings/pinctrl/fsl,imx6q-pinctrl.txt for a documentation what the
0x4001b8b1 value means. In short bit30 is for the SION bit and the
remaing bits are for the PAD_CTL register.

Sascha

-- 
Pengutronix e.K.                           |                             |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |



More information about the barebox mailing list