i2c-mlxbf.c: Sync up driver with upstreaming
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
linux-bluefield (Ubuntu) |
Invalid
|
Undecided
|
Unassigned | ||
Focal |
Fix Released
|
Medium
|
Asmaa Mnebhi | ||
Jammy |
Fix Committed
|
Medium
|
Asmaa Mnebhi |
Bug Description
SRU Justification:
[Impact]
Several i2c-mlxbf.c patches have been upstreamed recently and are in linux-next at the moment. So revert all changes in both Focal (5.4) and Jammy (5.15) and cherry-pick all changes from linux-next master.
IMPORTANT NOTE: The new linux i2c support for BF3 also REQUIRES upgrading the UEFI firmware version. For BF1 and BF2 however, this driver should be backward compatible with older UEFI versions.
[Fix]
* There is a total of 17 commits: 8 reverts, 8 cherry-picks from linux-next and one internal "UBUNTU: SAUCE:" to ad the driver version. Following is the list of commits cherry-picked.
* i2c: mlxbf: incorrect base address passed during io write
From <https:/
* i2c: mlxbf: prevent stack overflow in mlxbf_i2c_
From <https:/
* i2c: mlxbf: remove IRQF_ONESHOT
From <https:/
* i2c: mlxbf: Fix frequency calculation
From <https:/
* i2c: mlxbf: support lock mechanism
From <https:/
* i2c: mlxbf: add multi slave functionality
From <https:/
* i2c: mlxbf: support BlueField-3 SoC
From <https:/
* i2c: mlxbf: remove device tree support
From <https:/
* Also add the i2c driver version to keep track of the changes internally.
[Test Case]
* Check that the i2c driver loads without errors on BF1 and BF2 (dmesg, and check i2c1 sysfs is created)
* Check that the i2c module can be removed and reloaded without errors.
* Check that IPMB services work successfully on systems with BMC. This is the best way to test the i2c driver. Run ipmitool command from the BF: ipmitool mc info
* Run ipmitool from the BMC as well: ipmitool -I ipmb mc info
* This driver should be backward compatible
* Make sure this driver is backward compatible with older UEFI version (only applicable for BF1 and BF2)
* Make sure this driver works for BF1, BF2 and BF3 with the latest UEFI version.
[Regression Potential]
* The i2c driver could fail to load because the UEFI firmware hasn't been upgraded
* The i2c driver would fail to load due to a bug
* IPMB code which utilises the i2c driver fails to work (ipmitool commands)
CVE References
description: | updated |
description: | updated |
Changed in linux-bluefield (Ubuntu Focal): | |
assignee: | nobody → Asmaa Mnebhi (asmaam) |
importance: | Undecided → Medium |
status: | New → In Progress |
Changed in linux-bluefield (Ubuntu Jammy): | |
assignee: | nobody → Asmaa Mnebhi (asmaam) |
importance: | Undecided → Medium |
status: | New → In Progress |
Changed in linux-bluefield (Ubuntu): | |
status: | New → Invalid |
Changed in linux-bluefield (Ubuntu Focal): | |
status: | In Progress → Fix Committed |
Changed in linux-bluefield (Ubuntu Jammy): | |
status: | In Progress → Fix Committed |
tags: |
added: verification-done-jammy removed: kernel-spammed-jammy-linux-bluefield verification-needed-jammy |
This bug is awaiting verification that the linux-bluefield /5.4.0- 1050.56 kernel in -proposed solves the problem. Please test the kernel and update this bug with the results. If the problem is solved, change the tag 'verification- needed- focal' to 'verification- done-focal' . If the problem still exists, change the tag 'verification- needed- focal' to 'verification- failed- focal'.
If verification is not done by 5 working days from today, this fix will be dropped from the source code, and this bug will be closed.
See https:/ /wiki.ubuntu. com/Testing/ EnableProposed for documentation how to enable and use -proposed. Thank you!