Re: [PATCH v7 1/3] dt-bindings: pinctrl: Add aspeed,ast2700-soc0-pinctrl
Billy Tsai <[email protected]>
| Newsgroups | org.ozlabs.lists.openbmc,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-clk,org.kernel.vger.linux-devicetree,org.kernel.vger.linux-gpio,org.kernel.vger.linux-kernel,org.ozlabs.lists.linux-aspeed |
|---|---|
| Message-ID | <OSQPR06MB7252EB0C2A1A3313DE49406B8B202@OSQPR06MB7252.apcprd06.prod.outlook.com> |
> > + properties: > > + function: > > + enum: > > + - EMMC > > + - JTAGDDR > > + - JTAGM0 > > + - JTAGPCIEA > > + - JTAGPCIEB > > + - JTAGPSP > > + - JTAGSSP > > + - JTAGTSP > > + - JTAGUSB3A > > + - JTAGUSB3B > > + - PCIERC0PERST > > + - PCIERC1PERST > > + - TSPRSTN > > + - UFSCLKI > > + - USB2AD0 > > + - USB2AD1 > > + - USB2AH > > + - USB2AHP > > + - USB2AHPD0 > > + - USB2AXH > > + - USB2AXH2B > > + - USB2AXHD1 > > + - USB2AXHP > > + - USB2AXHP2B > > + - USB2AXHPD1 > > + - USB2BD0 > > + - USB2BD1 > > + - USB2BH > > + - USB2BHP > > + - USB2BHPD0 > > + - USB2BXH > > + - USB2BXH2A > > + - USB2BXHD1 > > + - USB2BXHP > > + - USB2BXHP2A > > + - USB2BXHPD1 > > + - USB3AXH > > + - USB3AXH2B > > + - USB3AXHD > > + - USB3AXHP > > + - USB3AXHP2B > > + - USB3AXHPD > > + - USB3BXH > > + - USB3BXH2A > > + - USB3BXHD > > + - USB3BXHP > > + - USB3BXHP2A > > + - USB3BXHPD > > + - VB > > + - VGADDC > > + > > + groups: > > + enum: > > + - EMMCCDN > > + - EMMCG1 > > + - EMMCG4 > > + - EMMCG8 > > + - EMMCWPN > > + - JTAG0 > > + - PCIERC0PERST > > + - PCIERC1PERST > > + - TSPRSTN > > + - UFSCLKI > > + - USB2A > > + - USB2AAP > > + - USB2ABP > > + - USB2ADAP > > + - USB2AH > > + - USB2AHAP > > + - USB2B > > + - USB2BAP > > + - USB2BBP > > + - USB2BDBP > > + - USB2BH > > + - USB2BHBP > > + - USB3A > > + - USB3AAP > > + - USB3ABP > > + - USB3B > > + - USB3BAP > > + - USB3BBP > > + - VB0 > > + - VB1 > > + - VGADDC > > + pins: > > + enum: > > + - AB13 > > + - AB14 > > + - AC13 > > + - AC14 > > + - AD13 > > + - AD14 > > + - AE13 > > + - AE14 > > + - AE15 > > + - AF13 > > + - AF14 > > + - AF15 > Why do you have groups and pins? > Is it valid in your device to have groups and pins in the same node? The intent is to support both group-based mux selection and configuration, as well as per-pin configuration. In our hardware: - `function` + `groups` are used for pinmux selection. - `pins` is used for per-pin configuration (e.g. drive strength, bias settings). - `groups` may also be used for group-level configuration. As a result, both `groups` and `pins` may appear in the same node, but they serve different purposes and do not conflict: - `groups` selects the mux function and may apply configuration to the entire group. - `pins` allows overriding or specifying configuration for individual pins. In most cases, only one of them is needed, but both are allowed when both group-level and per-pin configuration are required. Thanks Billy Tsai