mirror of
https://github.com/torvalds/linux.git
synced 2026-04-27 11:02:31 -04:00
The I2C controller IP used in the Allwinner F1C100s series of SoCs is compatible with the ones used in the other Allwinner SoCs. Add an F1C100s specific compatible string to the list of existing names. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Acked-by: Rob Herring <robh@kernel.org> Signed-off-by: Wolfram Sang <wsa@kernel.org>
142 lines
3.1 KiB
YAML
142 lines
3.1 KiB
YAML
# SPDX-License-Identifier: GPL-2.0
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/i2c/marvell,mv64xxx-i2c.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Marvell MV64XXX I2C Controller
|
|
|
|
maintainers:
|
|
- Gregory CLEMENT <gregory.clement@bootlin.com>
|
|
|
|
properties:
|
|
compatible:
|
|
oneOf:
|
|
- const: allwinner,sun4i-a10-i2c
|
|
- items:
|
|
- const: allwinner,sun7i-a20-i2c
|
|
- const: allwinner,sun4i-a10-i2c
|
|
- const: allwinner,sun6i-a31-i2c
|
|
- items:
|
|
- enum:
|
|
- allwinner,suniv-f1c100s-i2c
|
|
- allwinner,sun8i-a23-i2c
|
|
- allwinner,sun8i-a83t-i2c
|
|
- allwinner,sun8i-v536-i2c
|
|
- allwinner,sun50i-a64-i2c
|
|
- allwinner,sun50i-h6-i2c
|
|
- const: allwinner,sun6i-a31-i2c
|
|
- description: Allwinner SoCs with offload support
|
|
items:
|
|
- enum:
|
|
- allwinner,sun20i-d1-i2c
|
|
- allwinner,sun50i-a100-i2c
|
|
- allwinner,sun50i-h616-i2c
|
|
- allwinner,sun50i-r329-i2c
|
|
- const: allwinner,sun8i-v536-i2c
|
|
- const: allwinner,sun6i-a31-i2c
|
|
- const: marvell,mv64xxx-i2c
|
|
- const: marvell,mv78230-i2c
|
|
- const: marvell,mv78230-a0-i2c
|
|
|
|
description:
|
|
Only use "marvell,mv78230-a0-i2c" for a very rare, initial
|
|
version of the SoC which had broken offload support. Linux
|
|
auto-detects this and sets it appropriately.
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
minItems: 1
|
|
items:
|
|
- description: Reference clock for the I2C bus
|
|
- description: Bus clock (Only for Armada 7K/8K)
|
|
|
|
clock-names:
|
|
minItems: 1
|
|
items:
|
|
- const: core
|
|
- const: reg
|
|
description:
|
|
Mandatory if two clocks are used (only for Armada 7k and 8k).
|
|
|
|
resets:
|
|
maxItems: 1
|
|
|
|
dmas:
|
|
items:
|
|
- description: RX DMA Channel
|
|
- description: TX DMA Channel
|
|
|
|
dma-names:
|
|
items:
|
|
- const: rx
|
|
- const: tx
|
|
|
|
dependencies:
|
|
dmas: [ dma-names ]
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
|
|
allOf:
|
|
- $ref: /schemas/i2c/i2c-controller.yaml#
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
enum:
|
|
- allwinner,sun4i-a10-i2c
|
|
- allwinner,sun6i-a31-i2c
|
|
|
|
then:
|
|
required:
|
|
- clocks
|
|
|
|
- if:
|
|
properties:
|
|
compatible:
|
|
contains:
|
|
const: allwinner,sun6i-a31-i2c
|
|
|
|
then:
|
|
required:
|
|
- resets
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
i2c@11000 {
|
|
compatible = "marvell,mv64xxx-i2c";
|
|
reg = <0x11000 0x20>;
|
|
interrupts = <29>;
|
|
clock-frequency = <100000>;
|
|
};
|
|
|
|
- |
|
|
i2c@11000 {
|
|
compatible = "marvell,mv78230-i2c";
|
|
reg = <0x11000 0x100>;
|
|
interrupts = <29>;
|
|
clock-frequency = <100000>;
|
|
};
|
|
|
|
- |
|
|
i2c@701000 {
|
|
compatible = "marvell,mv78230-i2c";
|
|
reg = <0x701000 0x20>;
|
|
interrupts = <29>;
|
|
clock-frequency = <100000>;
|
|
clock-names = "core", "reg";
|
|
clocks = <&core_clock>, <®_clock>;
|
|
};
|
|
|
|
...
|