File Index
Files and directories
Sign in
FILE

canaan,k210-sysctl.yaml

File preview with syntax highlighting.

linux-6.19.14/Documentation/devicetree/bindings/mfd/canaan,k210-sysctl.yaml YAML
  1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
  2%YAML 1.2
  3---
  4$id: http://devicetree.org/schemas/mfd/canaan,k210-sysctl.yaml#
  5$schema: http://devicetree.org/meta-schemas/core.yaml#
  6
  7title: Canaan Kendryte K210 System Controller
  8
  9maintainers:
 10  - Damien Le Moal <dlemoal@kernel.org>
 11
 12description:
 13  Canaan Inc. Kendryte K210 SoC system controller which provides a
 14  register map for controlling the clocks, reset signals and pin power
 15  domains of the SoC.
 16
 17properties:
 18  compatible:
 19    items:
 20      - const: canaan,k210-sysctl
 21      - const: syscon
 22      - const: simple-mfd
 23
 24  clocks:
 25    maxItems: 1
 26    description:
 27      System controller Advanced Power Bus (APB) interface clock source.
 28
 29  clock-names:
 30    items:
 31      - const: pclk
 32
 33  reg:
 34    maxItems: 1
 35
 36  clock-controller:
 37    # Child node
 38    type: object
 39    $ref: /schemas/clock/canaan,k210-clk.yaml
 40    description:
 41      Clock controller for the SoC clocks. This child node definition
 42      should follow the bindings specified in
 43      Documentation/devicetree/bindings/clock/canaan,k210-clk.yaml.
 44
 45  reset-controller:
 46    # Child node
 47    type: object
 48    $ref: /schemas/reset/canaan,k210-rst.yaml
 49    description:
 50      Reset controller for the SoC. This child node definition
 51      should follow the bindings specified in
 52      Documentation/devicetree/bindings/reset/canaan,k210-rst.yaml.
 53
 54  syscon-reboot:
 55    # Child node
 56    type: object
 57    $ref: /schemas/power/reset/syscon-reboot.yaml
 58    description:
 59      Reboot method for the SoC. This child node definition
 60      should follow the bindings specified in
 61      Documentation/devicetree/bindings/power/reset/syscon-reboot.yaml.
 62
 63required:
 64  - compatible
 65  - clocks
 66  - reg
 67  - clock-controller
 68
 69additionalProperties: false
 70
 71examples:
 72  - |
 73    #include <dt-bindings/clock/k210-clk.h>
 74    #include <dt-bindings/reset/k210-rst.h>
 75
 76    clocks {
 77      in0: oscllator {
 78        compatible = "fixed-clock";
 79        #clock-cells = <0>;
 80        clock-frequency = <26000000>;
 81      };
 82    };
 83
 84    sysctl: syscon@50440000 {
 85      compatible = "canaan,k210-sysctl",
 86                   "syscon", "simple-mfd";
 87      reg = <0x50440000 0x100>;
 88      clocks = <&sysclk K210_CLK_APB1>;
 89      clock-names = "pclk";
 90
 91      sysclk: clock-controller {
 92        #clock-cells = <1>;
 93        compatible = "canaan,k210-clk";
 94        clocks = <&in0>;
 95      };
 96
 97      sysrst: reset-controller {
 98        compatible = "canaan,k210-rst";
 99        #reset-cells = <1>;
100      };
101
102      reboot: syscon-reboot {
103        compatible = "syscon-reboot";
104        regmap = <&sysctl>;
105        offset = <48>;
106        mask = <1>;
107        value = <1>;
108      };
109    };
~/ Read-only file preview.