Documentation/devicetree/bindings/pinctrl/microchip,pic64gx-pinctrl-gpio2.yaml

Source file repositories/reference/linux-study-clean/Documentation/devicetree/bindings/pinctrl/microchip,pic64gx-pinctrl-gpio2.yaml

File Facts

System
Linux kernel
Corpus path
Documentation/devicetree/bindings/pinctrl/microchip,pic64gx-pinctrl-gpio2.yaml
Extension
.yaml
Size
2034 bytes
Lines
75
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/microchip,pic64gx-pinctrl-gpio2.yaml#
$schema: http://devicetree.org/meta-schemas/core.yaml#

title: Microchip PIC64GX GPIO2 Mux

maintainers:
  - Conor Dooley <conor.dooley@microchip.com>

description:
  The "GPIO2 Mux" determines whether GPIO2 or select other functions are
  available on package pins on PIC64GX. Some of these functions must be
  mapped to this mux via iomux0 for settings here to have any impact.

properties:
  compatible:
    const: microchip,pic64gx-pinctrl-gpio2

  reg:
    maxItems: 1

  pinctrl-use-default: true

patternProperties:
  '^mux-':
    type: object
    $ref: pinmux-node.yaml
    additionalProperties: false

    properties:
      function:
        description:
          A string containing the name of the function to mux to the group.
        enum: [ mdio0, mdio1, spi0, can0, pcie, qspi, uart3, uart4, can1, uart2, gpio ]

      groups:
        description:
          An array of strings. Each string contains the name of a group.
        items:
          enum: [ mdio0, mdio1, spi0, can0, pcie, qspi, uart3, uart4, can1, uart2,
                  gpio_mdio0, gpio_mdio1, gpio_spi0, gpio_can0, gpio_pcie,
                  gpio_qspi, gpio_uart3, gpio_uart4, gpio_can1, gpio_uart2 ]

    required:
      - function
      - groups

required:
  - compatible
  - reg

additionalProperties: false

examples:
  - |
    pinctrl@41000000 {
      compatible = "microchip,pic64gx-pinctrl-gpio2";
      reg = <0x41000000 0x4>;
      pinctrl-use-default;
      pinctrl-names = "default";
      pinctrl-0 = <&mdio0_gpio2>, <&mdio1_gpio2>, <&spi0_gpio2>, <&qspi_gpio2>,
                  <&uart3_gpio2>, <&uart4_gpio2>, <&can1_gpio2>, <&can0_gpio2>,
                  <&uart2_gpio2>;

      mux-gpio2 {
        function = "gpio";
        groups = "gpio_mdio1", "gpio_spi0", "gpio_can0", "gpio_pcie",
                 "gpio_qspi", "gpio_uart3", "gpio_uart4", "gpio_can1";

Annotation

Implementation Notes