On Mon, Jan 06, 2020 at 05:29:50PM +0800, Anson Huang wrote: > Add binding doc for i.MX8MP pinctrl driver. > > Signed-off-by: Anson Huang <Anson.Huang@xxxxxxx> > Reviewed-by: Abel Vesa <abel.vesa@xxxxxxx> > --- > Changes since V2: > - use DT schema instead of txt for binding doc. > --- > .../bindings/pinctrl/fsl,imx8mp-pinctrl.yaml | 65 ++ > arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h | 931 +++++++++++++++++++++ > 2 files changed, 996 insertions(+) > create mode 100644 Documentation/devicetree/bindings/pinctrl/fsl,imx8mp-pinctrl.yaml > create mode 100644 arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h > > diff --git a/Documentation/devicetree/bindings/pinctrl/fsl,imx8mp-pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/fsl,imx8mp-pinctrl.yaml > new file mode 100644 > index 0000000..cdb6c21 > --- /dev/null > +++ b/Documentation/devicetree/bindings/pinctrl/fsl,imx8mp-pinctrl.yaml > @@ -0,0 +1,65 @@ > +# SPDX-License-Identifier: GPL-2.0-or-later > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/pinctrl/fsl,imx8mp-pinctrl.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Freescale IMX8MP IOMUX Controller > + > +maintainers: > + - Anson Huang <Anson.Huang@xxxxxxx> > + > +description: > + Please refer to fsl,imx-pinctrl.txt and pinctrl-bindings.txt in this directory > + for common binding part and usage. > + > +properties: > + compatible: > + const: fsl,imx8mp-iomuxc > + > +# Client device subnode's properties > +patternProperties: > + '-grp$': > + type: object > + description: > + Pinctrl node's client devices use subnodes for desired pin configuration. > + Client device subnodes use below standard properties. > + > + properties: > + fsl,pins: > + $ref: /schemas/types.yaml#/definitions/string string or... > + description: > + each entry consists of 6 integers and represents the mux and config integers? > + setting for one pin. The first 5 integers <mux_reg conf_reg input_reg > + mux_val input_val> are specified using a PIN_FUNC_ID macro, which can > + be found in <arch/arm64/boot/dts/freescale/imx8mp-pinfunc.h>. The last > + integer CONFIG is the pad setting value like pull-up on this pin. Please > + refer to i.MX8M Plus Reference Manual for detailed CONFIG settings. > + > + required: > + - fsl,pins > + > + additionalProperties: false > + > +required: > + - compatible > + - reg > + > +additionalProperties: false > + > +examples: > + # Pinmux controller node > + - | > + iomuxc: pinctrl@30330000 { > + compatible = "fsl,imx8mp-iomuxc"; > + reg = <0x30330000 0x10000>; > + > + pinctrl_uart2: uart2grp { > + fsl,pins = < > + MX8MP_IOMUXC_UART2_RXD__UART2_DCE_RX 0x49 > + MX8MP_IOMUXC_UART2_TXD__UART2_DCE_TX 0x49 Run 'make dt_binding_check'. Doesn't build: Error: Documentation/devicetree/bindings/pinctrl/fsl,imx8mp-pinctrl.example.dts:23.21-22 syntax error FATAL ERROR: Unable to parse input tree > + >; > + }; > + }; > + > +...