lkml.org 
[lkml]   [2020]   [May]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v2 6/7] pinctrl: madera: Move binding over to dtschema
    Date
    Signed-off-by: Charles Keepax <ckeepax@opensource.cirrus.com>
    ---

    New since v1, putting in the same series as Arizona since they share the
    same regulator binding.

    Thanks,
    Charles

    .../bindings/pinctrl/cirrus,madera-pinctrl.txt | 99 --------------
    .../devicetree/bindings/pinctrl/cirrus,madera.yaml | 147 +++++++++++++++++++++
    2 files changed, 147 insertions(+), 99 deletions(-)
    delete mode 100644 Documentation/devicetree/bindings/pinctrl/cirrus,madera-pinctrl.txt
    create mode 100644 Documentation/devicetree/bindings/pinctrl/cirrus,madera.yaml

    diff --git a/Documentation/devicetree/bindings/pinctrl/cirrus,madera-pinctrl.txt b/Documentation/devicetree/bindings/pinctrl/cirrus,madera-pinctrl.txt
    deleted file mode 100644
    index b0e36cf0d289e..0000000000000
    --- a/Documentation/devicetree/bindings/pinctrl/cirrus,madera-pinctrl.txt
    +++ /dev/null
    @@ -1,99 +0,0 @@
    -Cirrus Logic Madera class audio codecs pinctrl driver
    -
    -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/madera.txt
    -
    - the generic pinmix bindings:
    - Documentation/devicetree/bindings/pinctrl/pinctrl-bindings.txt
    -
    -Required properties of parent mfd node:
    - - pinctrl-names : must be "default"
    - - pinctrl-0 : a phandle to the node containing the subnodes containing default
    - configurations
    -
    -Required subnodes:
    - 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.
    -
    -Required properties of configuration subnodes:
    - - groups : name of one pin group to configure. One of:
    - aif1, aif2, aif3, aif4, mif1, mif2, mif3, pdmspk1, pdmspk2,
    - dmic4, dmic5, dmic6,
    - gpio1, gpio2, ..., gpio40
    - The gpioN groups select the single pin of this name for configuration
    -
    -Optional properties of configuration subnodes:
    - Any configuration option not explicitly listed in the dts will be left at
    - chip default setting.
    -
    - - function : name of function to assign to this group. One of:
    - 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 : disable pull-up and pull-down
    - - bias-bus-hold : enable buskeeper
    - - bias-pull-up : output is pulled-up
    - - bias-pull-down : output is pulled-down
    - - drive-push-pull : CMOS output
    - - drive-open-drain : open-drain output
    - - drive-strength : drive strength in mA. Valid values are 4 or 8
    - - input-schmitt-enable : enable schmitt-trigger mode
    - - input-schmitt-disable : disable schmitt-trigger mode
    - - input-debounce : A value of 0 disables debounce, a value !=0 enables
    - debounce
    - - output-low : set the pin to output mode with low level
    - - output-high : set the pin to output mode with high level
    -
    -Example:
    -
    -cs47l85@0 {
    - compatible = "cirrus,cs47l85";
    -
    - pinctrl-names = "default";
    - pinctrl-0 = <&cs47l85_defaults>;
    -
    - cs47l85_defaults: cs47l85-gpio-defaults {
    - aif1 {
    - groups = "aif1";
    - function = "aif1";
    - bias-bus-hold;
    - };
    -
    - aif2 {
    - groups = "aif2";
    - function = "aif2";
    - bias-bus-hold;
    - };
    -
    - opclk {
    - groups = "gpio1";
    - function = "opclk";
    - bias-pull-up;
    - drive-strength = <8>;
    - };
    - };
    -};
    diff --git a/Documentation/devicetree/bindings/pinctrl/cirrus,madera.yaml b/Documentation/devicetree/bindings/pinctrl/cirrus,madera.yaml
    new file mode 100644
    index 0000000000000..07a13429ca6c4
    --- /dev/null
    +++ b/Documentation/devicetree/bindings/pinctrl/cirrus,madera.yaml
    @@ -0,0 +1,147 @@
    +# 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:
    + pinctrl-0:
    + description:
    + A phandle to the node containing the subnodes containing default
    + configurations.
    +
    + pinctrl-names:
    + description:
    + A pinctrl state named "default" must be defined.
    + const: default
    +
    +patternProperties:
    + '^.*-pins$':
    + 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.
    + patternProperties:
    + '^.*-pin$':
    + 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:
    + description:
    + Disable pull-up and pull-down.
    +
    + bias-bus-hold:
    + description:
    + Enable buskeeper.
    +
    + bias-pull-up:
    + description:
    + Output is pulled-up.
    +
    + bias-pull-down:
    + description:
    + Output is pulled-down.
    +
    + drive-push-pull:
    + description:
    + CMOS output.
    +
    + drive-open-drain:
    + description:
    + Open-drain output.
    +
    + drive-strength:
    + description:
    + Drive strength in mA.
    + enum: [ 4, 8 ]
    +
    + input-schmitt-enable:
    + description:
    + Enable schmitt-trigger mode.
    +
    + input-schmitt-disable:
    + description:
    + Disable schmitt-trigger mode.
    +
    + input-debounce:
    + description:
    + A zero value disables debounce, non-zero value enables
    + debounce.
    +
    + output-low:
    + description:
    + Set the pin to output mode with low level.
    +
    + output-high:
    + description:
    + Set the pin to output mode with high level.
    +
    + additionalProperties: false
    +
    + required:
    + - groups
    +
    + additionalProperties: false
    +
    +required:
    + - pinctrl-0
    + - pinctrl-names
    --
    2.11.0
    \
     
     \ /
      Last update: 2020-05-06 17:58    [W:2.893 / U:0.012 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site