This is a series of patches fixing several bugs and implementing new features. Bug fixes: 1) Support lock mechanism to avoid race condition between entities using the i2c bus Cleanup: 2) remove IRQF_ONESHOT flag as it is no longer needed. 3) Remove device tree support Features: 3) Support multi slave functionality 4) Support BlueField-3 SoC What has changed from v5->v6: - the following patches were part of previous patches but they have been pushed to the latest branch since: 1) Fix the frequency calculation 2) Fix incorrect base address passed during io write 3) prevent stack overflow in mlxbf_i2c_smbus_start_transaction() So I rebased to master and removed them from this series. - BlueField customers need to use NVIDIA custom firmware which uses ACPI, so there is no need to support device trees. Remove device tree support from the driver as well as from the binding doc. Asmaa Mnebhi (5): i2c: i2c-mlxbf.c: remove IRQF_ONESHOT i2c: i2c-mlxbf.c: support lock mechanism i2c: i2c-mlxbf: add multi slave functionality i2c: i2c-mlxbf.c: support BlueField-3 SoC i2c: i2c-mlxbf.c: remove device tree support .../bindings/i2c/mellanox,i2c-mlxbf.yaml | 77 -- MAINTAINERS | 1 + drivers/i2c/busses/i2c-mlxbf.c | 841 ++++++++++-------- 3 files changed, 458 insertions(+), 461 deletions(-) delete mode 100644 Documentation/devicetree/bindings/i2c/mellanox,i2c-mlxbf.yaml -- 2.30.1