2 Replies Latest reply on Jun 22, 2017 11:17 PM by taira

    Chip address for 82580 i2c interface with Linux

    taira

      Hi! all

       

      I use 82580EB whose i2c interface(SFP0_I2C_CLK,DATA) is connected to an i2c slave device.

      I make igb driver as below,

      [detail]

        -Base ver:igb-5.2.9.4.tar.gz

        -patches:add_i2cenable_parameter.patch

                       i2c_disables_oe_when_reading_scl_and_sda.patch

                       i2c_tristates_pins_for_high_value.patch

      I try to check i2c interface as following steps,

      (1)modprobe -r igb

      (2)modprobe igb I2CBB=1

      (3)modprobe i2c-dev

      (4)i2cdetect - 0

       

      -----------------------------result------------------------------------------

      WARNING! This program can confuse your I2C bus, cause data loss and worse!

      I will probe file /dev/i2c-0.

      I will probe address range 0x03-0x77.

      Continue? [Y/n] y

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

      00:          -- -- -- -- -- 08 -- -- -- -- -- -- --

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

      20: -- -- -- -- 24 -- -- -- -- -- -- -- -- -- -- --

      30: -- -- -- -- -- -- -- -- 38 -- -- -- -- -- -- --

      40: -- -- -- -- 44 -- -- -- -- -- -- -- -- -- -- --

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

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

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

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

      I guess that "i2cdetect -y 0" detects 4 i2c interface. Because 82580 has 4 i2c interface.

      But the result means that 5 i2c interface are detected.

       

      I would like to know that what device is maeached to each chip address.

      How should I confrm the relation between chip address and actual device ?

       

      Best Regards,

      Taira