TS-4900 TWI: Difference between revisions

From embeddedTS Manuals
(Created page with "The i.MX6 supports standard I2C at 100khz, or using fast mode for 400khz operation. The CPU has 2 I2C busses used on the TS-4900. I2C 1 is internal to the TS-4900 and connec...")
 
m (Links auto-updated for 2022 re-branding ( https://github.com/embeddedarm/linux-3.10.17-imx6/blob/619e6bf97479243e9d7b7f6b34ce0ae8558ff1fd/arch/arm/boot/dts/imx6qdl-ts4900-2.dtsi#L196 →‎ https://github.com/embeddedTS/linux-3.10.17-imx6/blob/619e6bf97479243e9d7b7f6b34ce0ae8558ff1fd/arch/arm/boot/dts/imx6qdl-ts4900-2.dtsi#L196 https://github.com/embeddedarm/linux-3.10.17-imx6/blob/619e6bf97479243e9d7b7f6b34ce0ae8558ff1fd/Documentation/i2c/dev-interface →‎ https://github.com/embeddedTS/linux-...)
 
(2 intermediate revisions by one other user not shown)
Line 1: Line 1:
The i.MX6 supports standard I2C at 100khz, or using fast mode for 400khz operation.  The CPU has 2 I2C busses used on the TS-4900.
The i.MX6 supports standard I2C at 100khz, or using fast mode for 400khz operation.  The CPU has 2 I2C buses used on the TS-4900.


I2C 1 is internal to the TS-4900 and connects to the RTC and FPGA.
I2C 1 is internal to the TS-4900 and connects to the RTC and FPGA.
Line 19: Line 19:
The second I2C bus is brought out on CN2_28 (SCL) and CN2_30 (SDA).  This bus has no devices except those added by the baseboard.
The second I2C bus is brought out on CN2_28 (SCL) and CN2_30 (SDA).  This bus has no devices except those added by the baseboard.


{{Note|It is also possible to request the kernel to bitbang additional I2C busses as needed.  See an example [https://github.com/embeddedarm/linux-3.10.17-imx6/blob/619e6bf97479243e9d7b7f6b34ce0ae8558ff1fd/arch/arm/boot/dts/imx6qdl-ts4900-2.dtsi#L196 here].}}
{{Note|It is also possible to request the kernel to bitbang additional I2C buses as needed.  See an example [https://github.com/embeddedTS/linux-3.10.17-imx6/blob/619e6bf97479243e9d7b7f6b34ce0ae8558ff1fd/arch/arm/boot/dts/imx6qdl-ts4900-2.dtsi#L196 here].}}


The kernel makes the I2C available at /dev/i2c-#.  You can use the i2c-tools (i2cdetect, i2cgetm, i2cset), or you can [https://github.com/embeddedarm/linux-3.10.17-imx6/blob/619e6bf97479243e9d7b7f6b34ce0ae8558ff1fd/Documentation/i2c/dev-interface write your own client].
The kernel makes the I2C available at /dev/i2c-#.  You can use the i2c-tools (i2cdetect, i2cget, i2cset), or you can [https://github.com/embeddedTS/linux-3.10.17-imx6/blob/619e6bf97479243e9d7b7f6b34ce0ae8558ff1fd/Documentation/i2c/dev-interface write your own client].

Latest revision as of 16:58, 17 January 2022

The i.MX6 supports standard I2C at 100khz, or using fast mode for 400khz operation. The CPU has 2 I2C buses used on the TS-4900.

I2C 1 is internal to the TS-4900 and connects to the RTC and FPGA.

Address Device
0x28-0x2f #FPGA
0x57 #NVRAM
0x6f #RTC

The second I2C bus is brought out on CN2_28 (SCL) and CN2_30 (SDA). This bus has no devices except those added by the baseboard.

Note: It is also possible to request the kernel to bitbang additional I2C buses as needed. See an example here.

The kernel makes the I2C available at /dev/i2c-#. You can use the i2c-tools (i2cdetect, i2cget, i2cset), or you can write your own client.