diff mbox

[10/10] i2c: dt: describe generic bindings

Message ID 1439066007-13951-11-git-send-email-wsa@the-dreams.de (mailing list archive)
State Accepted
Delegated to: Geert Uytterhoeven
Headers show

Commit Message

Wolfram Sang Aug. 8, 2015, 8:33 p.m. UTC
From: Wolfram Sang <wsa+renesas@sang-engineering.com>

Start a new file which describes the generic bindings used for I2C with
device tree. So we have a central place to look for them, increase
visibility of them, and hopefully reduce the amount of custom properties
introduced.

Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
---
 Documentation/devicetree/bindings/i2c/i2c.txt | 33 +++++++++++++++++++++++++++
 1 file changed, 33 insertions(+)
 create mode 100644 Documentation/devicetree/bindings/i2c/i2c.txt

Comments

Vaibhav Hiremath Aug. 9, 2015, 9:51 a.m. UTC | #1
On Sunday 09 August 2015 02:03 AM, Wolfram Sang wrote:
> From: Wolfram Sang <wsa+renesas@sang-engineering.com>
>
> Start a new file which describes the generic bindings used for I2C with
> device tree. So we have a central place to look for them, increase
> visibility of them, and hopefully reduce the amount of custom properties
> introduced.
>
> Signed-off-by: Wolfram Sang <wsa+renesas@sang-engineering.com>
> ---
>   Documentation/devicetree/bindings/i2c/i2c.txt | 33 +++++++++++++++++++++++++++
>   1 file changed, 33 insertions(+)
>   create mode 100644 Documentation/devicetree/bindings/i2c/i2c.txt
>
> diff --git a/Documentation/devicetree/bindings/i2c/i2c.txt b/Documentation/devicetree/bindings/i2c/i2c.txt
> new file mode 100644
> index 00000000000000..1175efed4a41b5
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/i2c/i2c.txt
> @@ -0,0 +1,33 @@
> +Generic device tree bindings for I2C busses
> +===========================================
> +
> +This document describes generic bindings which can be used to describe I2C
> +busses in a device tree.
> +
> +Required properties
> +-------------------
> +
> +- #address-cells  - should be <1>. Read more about addresses below.
> +- #size-cells     - should be <0>.
> +- compatible      - name of I2C bus controller following generic names
> +		    recommended practice.
> +
> +For other required properties e.g. to describe register sets, interrupts,
> +clocks, etc. check the binding documentation of the specific driver.
> +
> +The cells properties above define that an address of children of an I2C bus
> +are described by a single value. This is usually a 7 bit address. However,
> +flags can be attached to the address. I2C_TEN_BIT_ADDRESS is used to mark a 10
> +bit address. It is needed to avoid the ambiguity between e.g. a 7 bit address
> +of 0x50 and a 10 bit address of 0x050 which, in theory, can be on the same bus.
> +Another flag is I2C_OWN_SLAVE_ADDRESS to mark addresses on which we listen to
> +be devices ourselves.
> +
> +Optional properties
> +-------------------
> +
> +These properties may not be supported by all drivers. However, if a driver
> +wants to support one of the below features, it should adapt the bindings below.
> +
> +- clock-frequency	- frequency of bus clock in Hz
> +- wakeup-source		- device can be used as a wakeup source.
>

Thanks for the patch and it looks good to me.

Shouldn't we also update/add other generic optional properties?
For example,

  - i2c-sclk-low-time-ns
  - i2c-sclk-high-time-ns
  - etc...


We need to consolidate all such generic properties in here.

Thanks,
Vaibhav
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Wolfram Sang Aug. 9, 2015, 12:15 p.m. UTC | #2
> Thanks for the patch and it looks good to me.

Thanks, I interpret this as an Acked-by :)

> Shouldn't we also update/add other generic optional properties?
> For example,
> 
>  - i2c-sclk-low-time-ns
>  - i2c-sclk-high-time-ns
>  - etc...

Yes, I will do this as an incremental patch once people are happy with
this start. Review is usually easier if done in small chunks.
Vaibhav Hiremath Aug. 9, 2015, 12:17 p.m. UTC | #3
On Sunday 09 August 2015 05:45 PM, Wolfram Sang wrote:
>
>> Thanks for the patch and it looks good to me.
>
> Thanks, I interpret this as an Acked-by :)
>
>> Shouldn't we also update/add other generic optional properties?
>> For example,
>>
>>   - i2c-sclk-low-time-ns
>>   - i2c-sclk-high-time-ns
>>   - etc...
>
> Yes, I will do this as an incremental patch once people are happy with
> this start. Review is usually easier if done in small chunks.
>

Agreed.

Feel free to add

Reviewed-by: Vaibhav Hiremath <vaibhav.hiremath@linaro.org>

Thanks,
Vaibhav
--
To unsubscribe from this list: send the line "unsubscribe linux-sh" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/Documentation/devicetree/bindings/i2c/i2c.txt b/Documentation/devicetree/bindings/i2c/i2c.txt
new file mode 100644
index 00000000000000..1175efed4a41b5
--- /dev/null
+++ b/Documentation/devicetree/bindings/i2c/i2c.txt
@@ -0,0 +1,33 @@ 
+Generic device tree bindings for I2C busses
+===========================================
+
+This document describes generic bindings which can be used to describe I2C
+busses in a device tree.
+
+Required properties
+-------------------
+
+- #address-cells  - should be <1>. Read more about addresses below.
+- #size-cells     - should be <0>.
+- compatible      - name of I2C bus controller following generic names
+		    recommended practice.
+
+For other required properties e.g. to describe register sets, interrupts,
+clocks, etc. check the binding documentation of the specific driver.
+
+The cells properties above define that an address of children of an I2C bus
+are described by a single value. This is usually a 7 bit address. However,
+flags can be attached to the address. I2C_TEN_BIT_ADDRESS is used to mark a 10
+bit address. It is needed to avoid the ambiguity between e.g. a 7 bit address
+of 0x50 and a 10 bit address of 0x050 which, in theory, can be on the same bus.
+Another flag is I2C_OWN_SLAVE_ADDRESS to mark addresses on which we listen to
+be devices ourselves.
+
+Optional properties
+-------------------
+
+These properties may not be supported by all drivers. However, if a driver
+wants to support one of the below features, it should adapt the bindings below.
+
+- clock-frequency	- frequency of bus clock in Hz
+- wakeup-source		- device can be used as a wakeup source.