Commit b3de755d authored by Alain Volmat's avatar Alain Volmat Committed by Wolfram Sang
Browse files

dt-bindings: i2c: i2c-st: convert to DT schema



Convert i2c-st.txt into st,sti-i2c.yaml for the i2c-st driver.

Signed-off-by: default avatarAlain Volmat <avolmat@me.com>
Reviewed-by: default avatarKrzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
parent eb4d8bac
Loading
Loading
Loading
Loading
+0 −41
Original line number Original line Diff line number Diff line
ST SSC binding, for I2C mode operation

Required properties :
- compatible : Must be "st,comms-ssc-i2c" or "st,comms-ssc4-i2c"
- reg : Offset and length of the register set for the device
- interrupts : the interrupt specifier
- clock-names: Must contain "ssc".
- clocks: Must contain an entry for each name in clock-names. See the common
  clock bindings.
- A pinctrl state named "default" must be defined to set pins in mode of
  operation for I2C transfer.

Optional properties :
- clock-frequency : Desired I2C bus clock frequency in Hz. 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.
- st,i2c-min-scl-pulse-width-us : The minimum valid SCL pulse width that is
  allowed through the deglitch circuit. In units of us.
- st,i2c-min-sda-pulse-width-us : The minimum valid SDA pulse width that is
  allowed through the deglitch circuit. In units of us.
- A pinctrl state named "idle" could be defined to set pins in idle state
  when I2C instance is not performing a transfer.
- A pinctrl state named "sleep" could be defined to set pins in sleep state
  when driver enters in suspend.



Example :

i2c0: i2c@fed40000 {
	compatible	= "st,comms-ssc4-i2c";
	reg		= <0xfed40000 0x110>;
	interrupts	=  <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
	clocks		= <&clk_s_a0_ls CLK_ICN_REG>;
	clock-names	= "ssc";
	clock-frequency = <400000>;
	pinctrl-names	= "default";
	pinctrl-0	= <&pinctrl_i2c0_default>;
	st,i2c-min-scl-pulse-width-us = <0>;
	st,i2c-min-sda-pulse-width-us = <5>;
};
+71 −0
Original line number Original line Diff line number Diff line
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/i2c/st,sti-i2c.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: I2C controller embedded in STMicroelectronics STi platform

maintainers:
  - Patrice Chotard <patrice.chotard@foss.st.com>

allOf:
  - $ref: /schemas/i2c/i2c-controller.yaml#

properties:
  compatible:
    enum:
      - st,comms-ssc-i2c
      - st,comms-ssc4-i2c

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  clock-names:
    maxItems: 1

  clock-frequency:
    enum: [ 100000, 400000 ]
    default: 100000

  st,i2c-min-scl-pulse-width-us:
    description:
      The minimum valid SCL pulse width that is allowed through the
      deglitch circuit. In units of us.

  st,i2c-min-sda-pulse-width-us:
    description:
      The minimum valid SDA pulse width that is allowed through the
      deglitch circuit. In units of us.

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - clock-names

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    #include <dt-bindings/clock/stih407-clks.h>
    i2c@fed40000 {
        compatible = "st,comms-ssc4-i2c";
        reg = <0xfed40000 0x110>;
        interrupts =  <GIC_SPI 187 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&clk_s_a0_ls CLK_ICN_REG>;
        clock-names = "ssc";
        clock-frequency = <400000>;
        pinctrl-names = "default";
        pinctrl-0 = <&pinctrl_i2c0_default>;
        st,i2c-min-scl-pulse-width-us = <0>;
        st,i2c-min-sda-pulse-width-us = <5>;
    };
+1 −1
Original line number Original line Diff line number Diff line
@@ -2925,7 +2925,7 @@ M: Patrice Chotard <patrice.chotard@foss.st.com>
L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
L:	linux-arm-kernel@lists.infradead.org (moderated for non-subscribers)
S:	Maintained
S:	Maintained
W:	http://www.stlinux.com
W:	http://www.stlinux.com
F:	Documentation/devicetree/bindings/i2c/i2c-st.txt
F:	Documentation/devicetree/bindings/i2c/st,sti-i2c.yaml
F:	arch/arm/boot/dts/sti*
F:	arch/arm/boot/dts/sti*
F:	arch/arm/mach-sti/
F:	arch/arm/mach-sti/
F:	drivers/ata/ahci_st.c
F:	drivers/ata/ahci_st.c