VAR-SOM-MX6 I2C: Difference between revisions
From Variscite Wiki
Line 69: | Line 69: | ||
If required you can use i2cset and i2cget to write/read data from a device. | If required you can use i2cset and i2cget to write/read data from a device. | ||
= Avoid writing to any Variscite device. = | = Avoid writing to any Variscite device. = | ||
When the device is marked with "UU" it says a driver is using it. | <br/>When the device is marked with "UU" it says a driver is using it. | ||
Driver with numbers are available. | <br/>Driver with numbers are available. | ||
Variscite devices: | <br/>Variscite devices: | ||
I2C-0 0x3C CAMERA | <br/>I2C-0 0x3C CAMERA | ||
<br/> | |||
I2C-1 0x37 HDMI | <br/>I2C-1 0x37 HDMI | ||
I2C-1 0x49 HDMI | <br/>I2C-1 0x49 HDMI | ||
I2C-1 0x59 HDMI | <br/>I2C-1 0x59 HDMI | ||
I2C-1 0x50 | <br/>I2C-1 0x50 | ||
I2C-1 0x56 EEPROM | <br/>I2C-1 0x56 EEPROM | ||
I2C-1 0x57 EEPROM | <br/>I2C-1 0x57 EEPROM | ||
<br/> | |||
I2C-2 0x38 LVDS | <br/>I2C-2 0x38 LVDS | ||
I2C-2 0x68 RTC | <br/>I2C-2 0x68 RTC |
Revision as of 14:34, 10 December 2015
VAR-SOM-MX6 - I2C
The I2C devices are handled with special drivers. for example rtc will use /dev/rtc driver. Sometime when you add a new device low level debugging via I2C is required.
I2C buses
List I2C available devices:
root@var-som-mx6:~# ls -l /dev/i2c-* crw------- 1 root root 89, 0 Dec 6 10:31 /dev/i2c-0 crw------- 1 root root 89, 1 Dec 6 10:31 /dev/i2c-1 crw------- 1 root root 89, 2 Dec 6 10:31 /dev/i2c-2
System class:
root@var-som-mx6:~# ls /sys/class/i2c-dev/ i2c-0 i2c-1 i2c-2
I2C device per bus
Scan bus 0:
root@var-som-mx6:~# i2cdetect -y -r 0 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
Scan bus 1:
root@var-som-mx6:~# i2cdetect -y -r 1 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- UU -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- UU -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- 37 -- -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- 49 -- -- -- -- -- -- 50: UU -- -- -- -- -- 56 57 -- 59 -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
Scan bus 2:
root@var-som-mx6:~# i2cdetect -y -r 2 0 1 2 3 4 5 6 7 8 9 a b c d e f 00: -- -- -- -- -- -- -- -- -- -- -- -- -- 10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 30: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 60: -- -- -- -- -- -- -- -- UU -- -- -- -- -- -- -- 70: -- -- -- -- -- -- -- --
I2C dump eeprom content
Dump the eeprom content:
root@var-som-mx6:~# i2cdump -y -r 0-0xf 1 0x56 b 0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef 00: 57 41 52 49 56 53 4d 2d 4d 58 36 2d 43 30 31 00 WARIVSM-MX6-C01.
Note:
Don't write to this device you will erase the DDR calibration parameters!!!
Don't write to this device you will erase the DDR calibration parameters!!!
If required you can use i2cset and i2cget to write/read data from a device.
Avoid writing to any Variscite device.
When the device is marked with "UU" it says a driver is using it.
Driver with numbers are available.
Variscite devices:
I2C-0 0x3C CAMERA
I2C-1 0x37 HDMI
I2C-1 0x49 HDMI
I2C-1 0x59 HDMI
I2C-1 0x50
I2C-1 0x56 EEPROM
I2C-1 0x57 EEPROM
I2C-2 0x38 LVDS
I2C-2 0x68 RTC