[PATCH 0/6] soc: qcom: add support for the I2C Master Hub

Neil Armstrong
2022-11-16T10:22:14Z

The I2C Master Hub only supports a variant of the I2C serial engine with:
- a separate "core" clock
- no DMA support
- non discoverable fixed FIFO size

Since DMA isn't supported, the wrapper doesn't need the Master AHB clock
and the iommus property neither.

This patchset adds the bindings changes to the QUPv3 wrapper and I2C serial
element bindings to reflect the different resources requirements.

In order to reuse the QUPv3 wrapper and I2C serial element driver support,
the I2C Master Hub requirements are expressed in new desc structs passed
as device match data.

To: Andy Gross <agross@kernel.org>
To: Bjorn Andersson <andersson@kernel.org>
To: Konrad Dybcio <konrad.dybcio@somainline.org>
To: Rob Herring <robh+dt@kernel.org>
To: Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>
Cc: linux-arm-msm@vger.kernel.org
Cc: devicetree@vger.kernel.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-i2c@vger.kernel.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>

---
Neil Armstrong (6):
dt-bindings: qcom: geni-se: document I2C Master Hub wrapper variant
dt-bindings: i2c: qcom-geni: document I2C Master Hub serial I2C engine
soc: qcom: geni-se: add desc struct to specify clocks from device match data
soc: qcom: geni-se: add support for I2C Master Hub wrapper variant
i2c: qcom-geni: add desc struct to prepare support for I2C Master Hub variant
i2c: qcom-geni: add support for I2C Master Hub variant

.../bindings/i2c/qcom,i2c-geni-qcom.yaml | 61 ++++++++++++++++----
.../devicetree/bindings/soc/qcom/qcom,geni-se.yaml | 43 +++++++++++---
drivers/i2c/busses/i2c-qcom-geni.c | 58 ++++++++++++++++++-
drivers/soc/qcom/qcom-geni-se.c | 67 +++++++++++++++++-----
4 files changed, 192 insertions(+), 37 deletions(-)
---
base-commit: 3c1f24109dfc4fb1a3730ed237e50183c6bb26b3
change-id: 20221114-narmstrong-sm8550-upstream-i2c-master-hub-44a7fb19475e

Best regards,
--
Neil Armstrong <neil.armstrong@linaro.org>