Using 5.15.0-1057, the fix is verified.
1. Use the hidden way to enable I2C3: # SYS_ENABLE_I2C3=TRUE bfcfg
2. Reboot DPU, then verify it is enabled: # bfcfg -d | grep -i i2c3
   sys: ENABLE_I2C3=1
3. Verified it is not working yet: #  i2cdetect -y 3
   Error: Could not open file `/dev/i2c-3' or `/dev/i2c/3': No such file or 
directory
4. Need another rshim boot on Host to make it work: # cat 
/auto/sw_soc_dev/builds/blos-prod-nightly/bluefield-rel-4.9.1/last_signed/dist/dev-release/BlueField-4.9.1.13439_preboot-install.bfb
 > /dev/rshim1/boot
5. Verified I2C3 bus is accessible: # i2cdetect -y 3
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:                         -- -- -- -- -- -- -- --
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 1f
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- 41 -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: 50 -- 52 -- -- -- -- -- 58 -- -- -- -- -- -- --
60: -- 61 -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --         
6. Verified it can read the Glacier/CEC version: # i2cget -y 3 0x52 0x07 i 7
   0x00 0x02 0xc3 0x00 0x00 0x00 0x16    

svc-soc-ver@bu-lab04v-oob:~$ sudo ipmitool mc info
Device ID                 : 1
Device Revision           : 1
Firmware Revision         : 24.10
IPMI Version              : 2.0
Manufacturer ID           : 33049
Manufacturer Name         : Unknown (0x8119)
Product ID                : 2 (0x0002)
Product Name              : Unknown (0x2)
Device Available          : yes
Provides Device SDRs      : yes
Additional Device Support :
    Sensor Device
    SDR Repository Device
    SEL Device
    FRU Inventory Device
    IPMB Event Receiver
    Chassis Device
Aux Firmware Rev Info     :
    0x10
    0x11
    0x00
    0x00  

** Tags removed: verification-needed-jammy-linux-bluefield
** Tags added: verification-done-jammy-linux-bluefield

-- 
You received this bug notification because you are a member of Kernel
Packages, which is subscribed to linux-bluefield in Ubuntu.
https://bugs.launchpad.net/bugs/2086815

Title:
  i2c-mlxbf: SMBus Repeated Start Support

Status in linux-bluefield package in Ubuntu:
  New
Status in linux-bluefield source package in Jammy:
  Fix Committed

Bug description:
  SRU Justification:

  [Impact]

  Reading SMBus or I2C block data on Bluefield will fail if the target
  device requires repeated start conditions to be used.

  [Fix]

  * Add support for repeated start conditions to the Mellanox I2C driver.
  * Enable repeated start condition for I2C_FUNC_SMBUS_WRITE_I2C_BLOCK read 
implementation.
  * Update I2C bus timing settings based on latest HW testing results. Required 
for repeated start transactions with Bluefield 3 target devices.

  [Test Case]

  * Verified MLXBF I2C driver builds and loads without errors on Bluefield 2 
and Bluefield 3.
  * Verified I2C block read of a device that requires repeated start conditions 
succeeds using the following command: "i2cget -y <bus> <target> <reg> i 
<bytes>".
  * Verified IPMB communication with BMC to regression test general I2C 
behavior. Used to following command which will result in several I2C 
transactions: "ipmitool mc info".

  [Regression Potential]

  * I2C bus timing settings have been updated and will affect all I2C and SMBus 
transactions on Bluefield.
  * SMBus I2C block reads now include a repeated start condition which could 
cause a regression if this type of read is expected to be used with a target 
device that does not support repeated start conditions.
  * IPMB transactions that use I2C could fail due to a bug with this 
implementation.

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/linux-bluefield/+bug/2086815/+subscriptions


-- 
Mailing list: https://launchpad.net/~kernel-packages
Post to     : kernel-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~kernel-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to