1 Reply Latest reply on Aug 21, 2017 2:02 PM by Intel Corporation

    How to use the I2C on ATOM Bay trail Board?

    suipingli

      My board used E3845 and I used I2C0 to link one pca9534 to be used as an I2c to GPIO and one AT24HC04B to be used to save something important. The other I2Cs are not linked any devices.

      I download the linux-stable kernel as the document tizen-ivi-m2-kernel-ltsi-linux-support-package-atom-e3800-gsg.pdf described. Made and updated the linux kernel.

       

      [root@localhost /]# uname -a

      Linux localhost.localdomain 3.10.28-03142014-ltsi+ #2 SMP Fri Aug 4 16:44:39 CST 2017 x86_64 x86_64 x86_64 GNU/Linux

       

       

      [root@localhost /]# i2cdetect -l

      i2c-0   i2c             i915 gmbus ssc                          I2C adapter

      i2c-1   i2c             i915 gmbus vga                          I2C adapter

      i2c-2   i2c             i915 gmbus panel                        I2C adapter

      i2c-3   i2c             i915 gmbus dpc                          I2C adapter

      i2c-4   i2c             i915 gmbus dpb                          I2C adapter

      i2c-5   i2c             i915 gmbus dpd                          I2C adapter

      i2c-6   i2c             DPDDC-B                                 I2C adapter

       

      [root@localhost /]# i2cdetect -y -r 0

           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

      00:          -- -- -- -- -- -- -- -- -- -- -- -- --

      10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      70: -- -- -- -- -- -- -- --                        

      [root@localhost /]# i2cdetect -y -r 1

           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

      00:          -- -- -- -- -- -- -- -- -- -- -- -- --

      10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      70: -- -- -- -- -- -- -- --                        

      [root@localhost /]# i2cdetect -y -r 2

           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

      00:          -- -- -- -- -- -- -- -- -- -- -- -- --

      10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      70: -- -- -- -- -- -- -- --                        

      [root@localhost /]# i2cdetect -y -r 3

           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

      00:          03 04 05 06 07 08 09 0a 0b 0c 0d 0e 0f

      10: 10 11 12 13 14 15 16 17 18 19 1a 1b 1c 1d 1e 1f

      20: 20 21 22 23 24 25 26 27 28 29 2a 2b 2c 2d 2e 2f

      30: 30 31 32 33 34 35 36 37 38 39 3a 3b 3c 3d 3e 3f

      40: 40 41 42 43 44 45 46 47 48 49 4a 4b 4c 4d 4e 4f

      50: 50 51 52 53 54 55 56 57 58 59 5a 5b 5c 5d 5e 5f

      60: 60 61 62 63 64 65 66 67 68 69 6a 6b 6c 6d 6e 6f

      70: 70 71 72 73 74 75 76 77                        

      [root@localhost /]# i2cdetect -y -r 4

           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

      00:          -- -- -- -- -- -- -- -- -- -- -- -- --

      10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      30: -- -- -- -- -- -- -- 37 -- -- 3a -- -- -- -- --

      40: -- -- -- -- -- -- -- -- -- -- 4a 4b -- -- -- --

      50: 50 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      70: -- -- -- -- -- -- -- --                        

      [root@localhost /]# i2cdetect -y -r 5

           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

      00:          -- -- -- -- -- -- -- -- -- -- -- -- --

      10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      70: -- -- -- -- -- -- -- --                        

      [root@localhost /]# i2cdetect -y -r 6

           0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f

      00:          -- -- -- --

      -- -- -- -- -- -- -- -- --

      10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --

      70: -- -- -- -- -- -- -- --                        

      [root@localhost /]#

       

      Can anybody tell me how to use Baytrail's I2c?  Please give me some advices or some source code for my reference.

      Thank you!