| # Copyright (c) 2022 SEAL AG |
| # SPDX-License-Identifier: Apache-2.0 |
| |
| description: | |
| Nuvoton NuMicro pinctrl node. This node will define pin configurations in pin groups, |
| and has the 'pinctrl' node identifier in the SOC's devicetree. Each group |
| within the pin configuration defines the pin configuration for a peripheral, |
| and each numbered subgroup in the pin group defines all the pins for that |
| peripheral with the same configuration properties. The 'pinmux' property in |
| a group selects the pins to be configured, and the remaining properties set |
| configuration values for those pins. Here is an example group for UART0 pins: |
| |
| uart0_default: uart0_default { |
| group0 { |
| pinmux = <UART0_RXD_PB12>, <UART0_TXD_PB13>; |
| }; |
| }; |
| |
| compatible: "nuvoton,numicro-pinctrl" |
| |
| include: base.yaml |
| |
| properties: |
| reg: |
| required: true |
| |
| child-binding: |
| description: NuMicro pin controller pin group |
| child-binding: |
| description: | |
| NuMicro pin controller pin configuration node |
| include: |
| - name: pincfg-node.yaml |
| property-allowlist: |
| - bias-pull-down |
| - bias-pull-up |
| - drive-open-drain |
| - input-schmitt-enable |
| - input-disable |
| properties: |
| pinmux: |
| required: true |
| type: array |
| description: | |
| Pin mux selections for this group. See the SoC level pinctrl dtsi file |
| for a defined list of these options. |
| slew-rate: |
| default: "normal" |
| type: string |
| enum: |
| - "normal" |
| - "high" |
| - "fast" |
| description: | |
| Pin output slew rate. Sets the HSRENx register. If not set, defaults to the |
| reset value (normal). |
| input-debounce: |
| type: boolean |
| description: | |
| enable the input debounce function |