Files
linux/Documentation/devicetree/bindings/pinctrl/cirrus,madera.yaml
Linus Torvalds 0809edbae3 Merge tag 'devicetree-fixes-for-5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux
Pull devicetree fixes and cleanups from Rob Herring:

 - Fix a regression when probing a child device reusing the parent
   device's DT node pointer

 - Refactor of_parse_phandle*() variants to static inlines

 - Drop Enric Balletbo i Serra as a maintainer

 - Fix DT schemas with arrays incorrectly encoded as a matrix

 - Drop unneeded pinctrl properties from schemas

 - Add SPI peripheral schema to SPI based displays

 - Clean-up several schema examples

 - Clean-up trivial-devices.yaml comments

 - Add missing, in use vendor prefixes: Wingtech, Thundercomm, Huawei,
   F(x)tec, 8devices

* tag 'devicetree-fixes-for-5.17-1' of git://git.kernel.org/pub/scm/linux/kernel/git/robh/linux:
  dt-bindings: google,cros-ec: drop Enric Balletbo i Serra from maintainers
  dt-bindings: display: bridge: drop Enric Balletbo i Serra from maintainers
  of: Check 'of_node_reused' flag on of_match_device()
  of: property: define of_property_read_u{8,16,32,64}_array() unconditionally
  of: base: make small of_parse_phandle() variants static inline
  dt-bindings: mfd: cirrus,madera: Fix 'interrupts' in example
  dt-bindings: Fix array schemas encoded as matrices
  dt-bindings: Drop unnecessary pinctrl properties
  dt-bindings: rtc: st,stm32-rtc: Make each example a separate entry
  dt-bindings: mmc: arm,pl18x: Make each example a separate entry
  dt-bindings: display: Add SPI peripheral schema to SPI based displays
  scripts/dtc: dtx_diff: remove broken example from help text
  dt-bindings: trivial-devices: fix double spaces in comments
  dt-bindings: trivial-devices: fix swapped comments
  dt-bindings: vendor-prefixes: add Wingtech
  dt-bindings: vendor-prefixes: add Thundercomm
  dt-bindings: vendor-prefixes: add Huawei
  dt-bindings: vendor-prefixes: add F(x)tec
  dt-bindings: vendor-prefixes: add 8devices
  dt-bindings: power: reset: gpio-restart: Correct default priority
2022-01-22 09:52:17 +02:00

118 lines
3.7 KiB
YAML

# 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:
- patches@opensource.cirrus.com
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, gpio7, gpio8, gpio9,
gpio10, gpio11, gpio12, gpio13, gpio14, gpio15,
gpio16, gpio17, gpio17, gpio18, gpio19, gpio20,
gpio21, gpio22, gpio23, gpio24, gpio25, gpio26,
gpio27, gpio27, gpio28, gpio29, gpio30, gpio31,
gpio32, gpio33, gpio34, gpio35, gpio36, gpio37,
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
allOf:
- $ref: "pinctrl.yaml#"
required:
- pinctrl-0
- pinctrl-names
additionalProperties: true