forked from Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
113 lines
3.7 KiB
113 lines
3.7 KiB
# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause |
|
%YAML 1.2 |
|
--- |
|
$id: http://devicetree.org/schemas/pinctrl/cirrus,madera.yaml# |
|
$schema: http://devicetree.org/meta-schemas/core.yaml# |
|
|
|
title: Cirrus Logic Madera class audio CODECs pinctrl driver |
|
|
|
maintainers: |
|
- [email protected] |
|
|
|
description: | |
|
The Cirrus Logic Madera codecs provide a number of GPIO functions for |
|
interfacing to external hardware and to provide logic outputs to other devices. |
|
Certain groups of GPIO pins also have an alternate function, normally as an |
|
audio interface. |
|
|
|
The set of available GPIOs, functions and alternate function groups differs |
|
between CODECs so refer to the datasheet for the CODEC for further information |
|
on what is supported on that device. |
|
|
|
The properties for this driver exist within the parent MFD driver node. |
|
|
|
See also the core bindings for the parent MFD driver: |
|
|
|
Documentation/devicetree/bindings/mfd/cirrus,madera.yaml |
|
|
|
And the generic pinmix bindings: |
|
|
|
Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt |
|
|
|
properties: |
|
pin-settings: |
|
description: |
|
One subnode is required to contain the default settings. It |
|
contains an arbitrary number of configuration subnodes, one for |
|
each group or pin configuration you want to apply as a default. |
|
type: object |
|
patternProperties: |
|
'-pins$': |
|
type: object |
|
allOf: |
|
- $ref: "pincfg-node.yaml#" |
|
- $ref: "pinmux-node.yaml#" |
|
properties: |
|
groups: |
|
description: |
|
Name of one pin group to configure. |
|
enum: [ aif1, aif2, aif3, aif4, mif1, mif2, mif3, pdmspk1, |
|
pdmspk2, dmic4, dmic5, dmic6, gpio1, gpio2, gpio3, |
|
gpio4, gpio5, gpio6, gpio7, gpio8, gpio9, |
|
gpio10, gpio11, gpio12, gpio13, gpio14, gpio15, |
|
gpio16, gpio17, gpio18, gpio19, gpio20, gpio21, |
|
gpio22, gpio23, gpio24, gpio25, gpio26, gpio27, |
|
gpio28, gpio29, gpio30, gpio31, gpio32, gpio33, |
|
gpio34, gpio35, gpio36, gpio37, gpio38, gpio39 ] |
|
|
|
function: |
|
description: |
|
Name of function to assign to this group. |
|
enum: [ aif1, aif2, aif3, aif4, mif1, mif2, mif3, |
|
pdmspk1, pdmspk2, dmic3, dmic4, dmic5, |
|
dmic6, io, dsp-gpio, irq1, irq2, fll1-clk, |
|
fll1-lock, fll2-clk, fll2-lock, fll3-clk, |
|
fll3-lock, fllao-clk, fllao-lock, opclk, |
|
opclk-async, pwm1, pwm2, spdif, asrc1-in1-lock, |
|
asrc1-in2-lock, asrc2-in1-lock, asrc2-in2-lock, |
|
spkl-short-circuit, spkr-short-circuit, |
|
spk-shutdown, spk-overheat-shutdown, |
|
spk-overheat-warn, timer1-sts, timer2-sts, |
|
timer3-sts, timer4-sts, timer5-sts, timer6-sts, |
|
timer7-sts, timer8-sts, log1-fifo-ne, |
|
log2-fifo-ne, log3-fifo-ne, log4-fifo-ne, |
|
log5-fifo-ne, log6-fifo-ne, log7-fifo-ne, |
|
log8-fifo-ne ] |
|
|
|
bias-disable: true |
|
|
|
bias-bus-hold: true |
|
|
|
bias-pull-up: true |
|
|
|
bias-pull-down: true |
|
|
|
drive-push-pull: true |
|
|
|
drive-open-drain: true |
|
|
|
drive-strength: |
|
enum: [ 4, 8 ] |
|
|
|
input-schmitt-enable: true |
|
|
|
input-schmitt-disable: true |
|
|
|
input-debounce: true |
|
|
|
output-low: true |
|
|
|
output-high: true |
|
|
|
additionalProperties: false |
|
|
|
required: |
|
- groups |
|
|
|
additionalProperties: false |
|
|
|
required: |
|
- pinctrl-0 |
|
- pinctrl-names |
|
|
|
additionalProperties: true
|
|
|