Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bbddb0fc authored by Maxime Ripard's avatar Maxime Ripard Committed by Wolfram Sang
Browse files

dt-bindings: i2c: sun6i-p2wi: Add YAML schemas



Switch the DT binding to a YAML schema to enable the DT validation.

Signed-off-by: default avatarMaxime Ripard <maxime.ripard@bootlin.com>
Reviewed-by: default avatarRob Herring <robh@kernel.org>
Signed-off-by: default avatarWolfram Sang <wsa@the-dreams.de>
parent d04913ec
Loading
Loading
Loading
Loading
+65 −0
Original line number Diff line number Diff line
# SPDX-License-Identifier: GPL-2.0
%YAML 1.2
---
$id: http://devicetree.org/schemas/i2c/allwinner,sun6i-a31-p2wi.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Allwinner A31 P2WI (Push/Pull 2 Wires Interface) Device Tree Bindings

maintainers:
  - Chen-Yu Tsai <wens@csie.org>
  - Maxime Ripard <maxime.ripard@bootlin.com>

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

properties:
  compatible:
    const: allwinner,sun6i-a31-p2wi

  reg:
    maxItems: 1

  interrupts:
    maxItems: 1

  clocks:
    maxItems: 1

  resets:
    maxItems: 1

  clock-frequency:
    minimum: 1
    maximum: 6000000

required:
  - compatible
  - reg
  - interrupts
  - clocks
  - resets

# FIXME: We should set it, but it would report all the generic
# properties as additional properties.
# additionalProperties: false

examples:
  - |
    i2c@1f03400 {
        compatible = "allwinner,sun6i-a31-p2wi";
        reg = <0x01f03400 0x400>;
        interrupts = <0 39 4>;
        clocks = <&apb0_gates 3>;
        clock-frequency = <6000000>;
        resets = <&apb0_rst 3>;
        #address-cells = <1>;
        #size-cells = <0>;

        axp221: pmic@68 {
            compatible = "x-powers,axp221";
            reg = <0x68>;
        };
    };

...
+0 −41
Original line number Diff line number Diff line

* Allwinner P2WI (Push/Pull 2 Wire Interface) controller

Required properties :

 - reg             : Offset and length of the register set for the device.
 - compatible      : Should one of the following:
                     - "allwinner,sun6i-a31-p2wi"
 - interrupts      : The interrupt line connected to the P2WI peripheral.
 - clocks          : The gate clk connected to the P2WI peripheral.
 - resets          : The reset line connected to the P2WI peripheral.

Optional properties :

 - clock-frequency : Desired P2WI bus clock frequency in Hz. If not set the
default frequency is 100kHz

A P2WI may contain one child node encoding a P2WI slave device.

Slave device properties:
  Required properties:
   - reg           : the I2C slave address used during the initialization
                     process to switch from I2C to P2WI mode

Example:

	p2wi@1f03400 {
		compatible = "allwinner,sun6i-a31-p2wi";
		reg = <0x01f03400 0x400>;
		interrupts = <0 39 4>;
		clocks = <&apb0_gates 3>;
		clock-frequency = <6000000>;
		resets = <&apb0_rst 3>;

		axp221: pmic@68 {
			compatible = "x-powers,axp221";
			reg = <0x68>;

			/* ... */
		};
	};