On Mon, Jan 8, 2018 at 6:33 PM, Karthik Ramasubramanian <kramasub@xxxxxxxxxxxxxx> wrote: > > > On 1/2/2018 8:51 AM, Rob Herring wrote: >> >> On Wed, Dec 27, 2017 at 09:27:23AM -0700, Karthikeyan Ramasubramanian >> wrote: >>> >>> Add device tree binding support for I2C Controller in GENI based >>> QUP Wrapper. >>> >>> Signed-off-by: Sagar Dharia <sdharia@xxxxxxxxxxxxxx> >>> Signed-off-by: Karthikeyan Ramasubramanian <kramasub@xxxxxxxxxxxxxx> >>> --- >>> .../devicetree/bindings/i2c/i2c-qcom-geni.txt | 39 >>> ++++++++++++++++++++++ >>> 1 file changed, 39 insertions(+) >>> create mode 100644 >>> Documentation/devicetree/bindings/i2c/i2c-qcom-geni.txt >>> >>> diff --git a/Documentation/devicetree/bindings/i2c/i2c-qcom-geni.txt >>> b/Documentation/devicetree/bindings/i2c/i2c-qcom-geni.txt >>> new file mode 100644 >>> index 0000000..d2fa9ce >>> --- /dev/null >>> +++ b/Documentation/devicetree/bindings/i2c/i2c-qcom-geni.txt >>> @@ -0,0 +1,39 @@ >>> +Qualcomm Technologies Inc. GENI based I2C Controller driver >>> + >>> +Required properties: >>> + - compatible: Should be: >>> + * "qcom,i2c-geni. >> >> >> Only 1 version? > > The Serial Engine used by I2C protocol has the same version as the QUP h/w > version. The QUP Wrapper driver exposes an interface function to get the h/w > version so that I2C controller driver can support version-specific > operations, if any. >> >> >>> + - reg: Should contain QUP register address and length. >>> + - interrupts: Should contain I2C interrupt. >>> + - clocks: Serial engine core clock, and AHB clocks needed by the >>> device. >> >> >> Are there really clocks for a firmware based device or these are just >> clocks in the parent serial engine? > > The clocks are required to derive the protocol clock. The clocks are also > required by the Serial Engine to access the System Memory during DMA mode of > operation. You can get the QUP core (or Serial engine?) node and then get its clocks if you need to know the frequency. Put the clocks in DT in the h/w block they belong to. If you don't really have an I2C clock in the h/w, don't put one in the DT. Rob -- To unsubscribe from this list: send the line "unsubscribe linux-arm-msm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html