74 lines
1.9 KiB
YAML
74 lines
1.9 KiB
YAML
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
|
|
%YAML 1.2
|
|
---
|
|
$id: http://devicetree.org/schemas/pinctrl/marvell,ac5-pinctrl.yaml#
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
title: Marvell AC5 pin controller
|
|
|
|
maintainers:
|
|
- Chris Packham <chris.packham@alliedtelesis.co.nz>
|
|
|
|
description:
|
|
Bindings for Marvell's AC5 memory-mapped pin controller.
|
|
|
|
properties:
|
|
compatible:
|
|
items:
|
|
- const: marvell,ac5-pinctrl
|
|
|
|
reg:
|
|
maxItems: 1
|
|
|
|
patternProperties:
|
|
'-pins$':
|
|
type: object
|
|
$ref: pinmux-node.yaml#
|
|
additionalProperties: false
|
|
|
|
properties:
|
|
marvell,function:
|
|
$ref: "/schemas/types.yaml#/definitions/string"
|
|
description:
|
|
Indicates the function to select.
|
|
enum: [ dev_init_done, ge, gpio, i2c0, i2c1, int_out, led, nand, pcie, ptp, sdio,
|
|
spi0, spi1, synce, tsen_int, uart0, uart1, uart2, uart3, uartsd, wd_int, xg ]
|
|
|
|
marvell,pins:
|
|
$ref: /schemas/types.yaml#/definitions/string-array
|
|
description:
|
|
Array of MPP pins to be used for the given function.
|
|
minItems: 1
|
|
items:
|
|
enum: [ mpp0, mpp1, mpp2, mpp3, mpp4, mpp5, mpp6, mpp7, mpp8, mpp9,
|
|
mpp10, mpp11, mpp12, mpp13, mpp14, mpp15, mpp16, mpp17, mpp18, mpp19,
|
|
mpp20, mpp21, mpp22, mpp23, mpp24, mpp25, mpp26, mpp27, mpp28, mpp29,
|
|
mpp30, mpp31, mpp32, mpp33, mpp34, mpp35, mpp36, mpp37, mpp38, mpp39,
|
|
mpp40, mpp41, mpp42, mpp43, mpp44, mpp45 ]
|
|
|
|
allOf:
|
|
- $ref: "pinctrl.yaml#"
|
|
|
|
required:
|
|
- compatible
|
|
- reg
|
|
|
|
additionalProperties: false
|
|
|
|
examples:
|
|
- |
|
|
pinctrl@80020100 {
|
|
compatible = "marvell,ac5-pinctrl";
|
|
reg = <0x80020100 0x20>;
|
|
|
|
i2c0_pins: i2c0-pins {
|
|
marvell,pins = "mpp26", "mpp27";
|
|
marvell,function = "i2c0";
|
|
};
|
|
|
|
i2c0_gpio: i2c0-gpio-pins {
|
|
marvell,pins = "mpp26", "mpp27";
|
|
marvell,function = "gpio";
|
|
};
|
|
};
|