mirror of
https://github.com/torvalds/linux.git
synced 2026-04-18 14:53:58 -04:00
The I2C controller requires a reset to ensure it starts from a clean state. Add the 'resets' property to support this hardware requirement. Signed-off-by: Encrow Thorne <jyc0019@gmail.com> Reviewed-by: Troy Mitchell <troy.mitchell@linux.spacemit.com> Acked-by: Rob Herring (Arm) <robh@kernel.org> Signed-off-by: Andi Shyti <andi.shyti@kernel.org> Link: https://lore.kernel.org/r/20251230150653.42097-1-jyc0019@gmail.com
68 lines
1.3 KiB
YAML
68 lines
1.3 KiB
YAML
# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/i2c/spacemit,k1-i2c.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: I2C controller embedded in SpacemiT's K1 SoC
|
|
|
|
maintainers:
|
|
- Troy Mitchell <troymitchell988@gmail.com>
|
|
|
|
allOf:
|
|
- $ref: /schemas/i2c/i2c-controller.yaml#
|
|
|
|
properties:
|
|
compatible:
|
|
const: spacemit,k1-i2c
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
interrupts:
|
|
maxItems: 1
|
|
|
|
clocks:
|
|
items:
|
|
- description: I2C Functional Clock
|
|
- description: APB Bus Clock
|
|
|
|
clock-names:
|
|
items:
|
|
- const: func
|
|
- const: bus
|
|
|
|
clock-frequency:
|
|
description: |
|
|
K1 support three different modes which running different frequencies
|
|
standard speed mode: up to 100000 (100Hz)
|
|
fast speed mode : up to 400000 (400Hz)
|
|
high speed mode : up to 3300000 (3.3Mhz)
|
|
default: 400000
|
|
maximum: 3300000
|
|
|
|
resets:
|
|
maxItems: 1
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
- interrupts
|
|
- clocks
|
|
|
|
unevaluatedProperties: false
|
|
|
|
examples:
|
|
- |
|
|
i2c@d4010800 {
|
|
compatible = "spacemit,k1-i2c";
|
|
reg = <0xd4010800 0x38>;
|
|
interrupt-parent = <&plic>;
|
|
interrupts = <36>;
|
|
clocks = <&ccu 32>, <&ccu 84>;
|
|
clock-names = "func", "bus";
|
|
clock-frequency = <100000>;
|
|
};
|
|
|
|
...
|