Commit 730f2051 authored by Cristian Ciocaltea's avatar Cristian Ciocaltea Committed by Wolfram Sang
Browse files

dt-bindings: i2c: owl: Convert Actions Semi Owl binding to a schema



Convert the Actions Semi Owl I2C DT binding to a YAML schema for
enabling DT validation.

Additionally, add a new compatible string corresponding to the I2C
controller found in the S500 variant of the Actions Semi Owl SoCs
family.

Signed-off-by: default avatarCristian Ciocaltea <cristian.ciocaltea@gmail.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarWolfram Sang <wsa@kernel.org>
parent f7414cd6
Loading
Loading
Loading
Loading
+0 −29
Original line number Diff line number Diff line
Actions Semiconductor Owl I2C controller

Required properties:

- compatible        : Should be one of the following:
		      - "actions,s700-i2c" for S700 SoC
		      - "actions,s900-i2c" for S900 SoC
- reg               : Offset and length of the register set for the device.
- #address-cells    : Should be 1.
- #size-cells       : Should be 0.
- interrupts        : A single interrupt specifier.
- clocks            : Phandle of the clock feeding the I2C controller.

Optional properties:

- clock-frequency   : Desired I2C bus clock frequency in Hz. As only Normal and
                      Fast modes are supported, possible values are 100000 and
                      400000.
Examples:

        i2c0: i2c@e0170000 {
                compatible = "actions,s900-i2c";
                reg = <0 0xe0170000 0 0x1000>;
                #address-cells = <1>;
                #size-cells = <0>;
                interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
                clocks = <&clock CLK_I2C0>;
                clock-frequency = <100000>;
        };
+62 −0
Original line number 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/i2c-owl.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Actions Semi Owl I2C Controller

maintainers:
  - Manivannan Sadhasivam <manivannan.sadhasivam@linaro.org>

description: |
  This I2C controller is found in the Actions Semi Owl SoCs:
  S500, S700 and S900.

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

properties:
  compatible:
    enum:
      - actions,s500-i2c # Actions Semi S500 compatible SoCs
      - actions,s700-i2c # Actions Semi S700 compatible SoCs
      - actions,s900-i2c # Actions Semi S900 compatible SoCs

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    description: Phandle of the clock feeding the I2C controller.
    minItems: 1

  clock-frequency:
    description: |
      Desired I2C bus clock frequency in Hz. As only Standard and Fast
      modes are supported, possible values are 100000 and 400000.
    enum: [100000, 400000]

required:
  - compatible
  - reg
  - interrupts
  - clocks

unevaluatedProperties: false

examples:
  - |
    #include <dt-bindings/clock/actions,s900-cmu.h>
    #include <dt-bindings/interrupt-controller/arm-gic.h>
    i2c@e0170000 {
        compatible = "actions,s900-i2c";
        reg = <0xe0170000 0x1000>;
        interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
        clocks = <&cmu CLK_I2C0>;
        clock-frequency = <100000>;
    };

...
+1 −1
Original line number Diff line number Diff line
@@ -1501,7 +1501,7 @@ S: Maintained
F:	Documentation/devicetree/bindings/arm/actions.yaml
F:	Documentation/devicetree/bindings/clock/actions,owl-cmu.txt
F:	Documentation/devicetree/bindings/dma/owl-dma.yaml
F:	Documentation/devicetree/bindings/i2c/i2c-owl.txt
F:	Documentation/devicetree/bindings/i2c/i2c-owl.yaml
F:	Documentation/devicetree/bindings/interrupt-controller/actions,owl-sirq.yaml
F:	Documentation/devicetree/bindings/mmc/owl-mmc.yaml
F:	Documentation/devicetree/bindings/pinctrl/actions,*