Files
linux/Documentation/devicetree/bindings/i2c/cdns,i2c-r1p10.yaml
Lars-Peter Clausen 8455460914 dt-bindings: i2c: cadence: Document resets property
The Cadence I2C controller has an external reset that needs to be
de-asserted before the I2C controller can be accessed.

Document the `resets` devicetree property that can be used to describe how
the reset signal is connected.

While the reset signal will always be present in hardware the devicetree
property is kept optional for backwards compatibility with existing systems
that do not specify the reset property and where the reset signal might not
be controlled by operating system.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Acked-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Acked-by: Michal Simek <michal.simek@amd.com>
Signed-off-by: Wolfram Sang <wsa@kernel.org>
2023-04-13 18:43:05 +02:00

73 lines
1.4 KiB
YAML

# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/i2c/cdns,i2c-r1p10.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#
title: Cadence I2C controller
maintainers:
- Michal Simek <michal.simek@xilinx.com>
allOf:
- $ref: /schemas/i2c/i2c-controller.yaml#
properties:
compatible:
enum:
- cdns,i2c-r1p10 # cadence i2c controller version 1.0
- cdns,i2c-r1p14 # cadence i2c controller version 1.4
reg:
maxItems: 1
clocks:
minItems: 1
resets:
maxItems: 1
interrupts:
maxItems: 1
clock-frequency:
minimum: 1
maximum: 400000
description: |
Desired operating frequency, in Hz, of the bus.
clock-name:
const: pclk
description: |
Input clock name.
fifo-depth:
description:
Size of the data FIFO in bytes.
$ref: /schemas/types.yaml#/definitions/uint32
default: 16
enum: [2, 4, 8, 16, 32, 64, 128, 256]
required:
- compatible
- reg
- clocks
- interrupts
unevaluatedProperties: false
examples:
- |
#include <dt-bindings/interrupt-controller/arm-gic.h>
i2c@e0004000 {
compatible = "cdns,i2c-r1p10";
clocks = <&clkc 38>;
resets = <&rstc 288>;
interrupts = <GIC_SPI 25 IRQ_TYPE_LEVEL_HIGH>;
reg = <0xe0004000 0x1000>;
clock-frequency = <400000>;
#address-cells = <1>;
#size-cells = <0>;
fifo-depth = <8>;
};