Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/pinctrl/canaan,k210-fpioa.yaml
Extension
.yaml
Size
5130 bytes
Lines
181
Domain
Support Tooling And Documentation
Bucket
Documentation
Inferred role
Support Tooling And Documentation: configuration, schema, or hardware description
Status
atlas-only

Why This File Exists

Repository support layer: documentation, build tooling, samples, user-space helper tools, generated initramfs support, licenses, and validation utilities.

Dependency Surface

Detected Declarations

Annotated Snippet

# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
%YAML 1.2
---
$id: http://devicetree.org/schemas/pinctrl/canaan,k210-fpioa.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Canaan Kendryte K210 FPIOA

maintainers:
  - Damien Le Moal <dlemoal@kernel.org>

description:
  The Canaan Kendryte K210 SoC Fully Programmable IO Array (FPIOA)
  controller allows assigning any of 256 possible functions to any of
  48 IO pins of the SoC. Pin function configuration is performed on
  a per-pin basis.

properties:
  compatible:
    const: canaan,k210-fpioa

  reg:
    maxItems: 1
    description:
      Address and length of the register set for the FPIOA controller.

  clocks:
    items:
      - description: Controller reference clock source
      - description: APB interface clock source

  clock-names:
    items:
      - const: ref
      - const: pclk

  resets:
    maxItems: 1

  canaan,k210-sysctl-power:
    $ref: /schemas/types.yaml#/definitions/phandle-array
    items:
      - items:
          - description: phandle of the K210 system controller node
          - description: offset of its power domain control register
    description: |
      phandle of the K210 system controller node and offset of its
      power domain control register.

patternProperties:
  '-pinmux$':
    type: object
    $ref: /schemas/pinctrl/pinmux-node.yaml
    description:
      FPIOA client devices use sub-nodes to define the desired pin
      configuration. Client device sub-nodes use the pinux property
      below.

    properties:
      pinmux:
        description:
          List of IO pins alternate functions. The values for each IO
          pin is a combination of an IO pin number (0 to 47) with the
          desired function for the IO pin. Functions are defined as
          macros in include/dt-bindings/pinctrl/k210-fpioa.h.
          The K210_FPIOA(IO pin, function) macro is provided to
          facilitate the combination of IO pin numbers and functions.

    required:
      - pinmux

Annotation

Implementation Notes