Thread (10 messages) 10 messages, 3 authors, 2013-10-02

[PATCH 1/4] i2c: busses: i2c-st: Add ST I2C controller

From: Stephen Warren <hidden>
Date: 2013-10-01 20:45:43
Also in: linux-devicetree, linux-i2c, lkml

On 10/01/2013 04:39 AM, Maxime COQUELIN wrote:
This patch adds support to SSC (Synchronous Serial Controller)
I2C driver. This IP also supports SPI protocol, but this is not
the aim of this driver.

This IP is embedded in all ST SoCs for Set-top box platorms, and
supports I2C Standard and Fast modes.
quoted hunk ↗ jump to hunk
diff --git a/Documentation/devicetree/bindings/i2c/i2c-st.txt b/Documentation/devicetree/bindings/i2c/i2c-st.txt
+Required properties :
+- clocks : phandle to the I2C clock source
+- clock-names : from common clock binding: Shall be "ssc"
I'd prefer to define that as:

clock-names: Must contain "ssc".
clocks: Must contain an entry for each name in clock-names. See the
common clock bindings.

That way, it makes it clear that clock-names is the primary lookup
mechanism, rather than some auxiliary documentation.
+Recommended properties :
+- clock-frequency : Desired I2C bus clock frequency in Hz. Otherwise
s/Otherwise/If not specified,/
+  the default 100 kHz frequency will be used. As only Normal and Fast modes
+  are supported, possible values are 100000 and 400000.
I think that's just optional. Since there's a well-defined sensible
default, there's no need to recommend it.
+Optional properties :
+- i2c-min-scl-pulse-width-us : The minimum valid SCL pulse width that is allowed
+  through the deglitch circuit. In units of us.
+- i2c-min-sda-pulse-width-us : The minimum valid SDA pulse width that is allowed
+  through the deglitch circuit. In units of us.
Are those properties specific to this binding, or intended to be
generic? If specific to this binding, a vendor prefix should be present
in the property name. If not, you probably want to document the
properties in some common file.
+Examples :
s/Examples/Example/ since there's just one.
+i2c0: i2c at fed40000 {
+	compatible	= "st,comms-ssc-i2c";
+	reg		= <0xfed40000 0x110>;
+	interrupts	=  <GIC_SPI 187 IRQ_TYPE_EDGE_RISING>;
+	clocks		= <&CLK_S_ICN_REG_0>;
+	clock-names	= "ssc";
+	clock-frequency = <400000>;
+	pinctrl-names	= "default";
+	pinctrl-0	= <&pinctrl_i2c0_default>;
That wasn't mentioned in the binding definition. You'd probably want to
document the requirement for those two properties by saying something like:

A pinctrl state named "default" must be defined, using the bindings in
../pinctrl/pinctrl-binding.txt.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help