1*86dc1b92SBilly Tsai# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*86dc1b92SBilly Tsai%YAML 1.2 3*86dc1b92SBilly Tsai--- 4*86dc1b92SBilly Tsai$id: http://devicetree.org/schemas/pinctrl/aspeed,ast2700-soc0-pinctrl.yaml# 5*86dc1b92SBilly Tsai$schema: http://devicetree.org/meta-schemas/core.yaml# 6*86dc1b92SBilly Tsai 7*86dc1b92SBilly Tsaititle: ASPEED AST2700 SoC0 Pin Controller 8*86dc1b92SBilly Tsai 9*86dc1b92SBilly Tsaimaintainers: 10*86dc1b92SBilly Tsai - Billy Tsai <billy_tsai@aspeedtech.com> 11*86dc1b92SBilly Tsai 12*86dc1b92SBilly Tsaidescription: > 13*86dc1b92SBilly Tsai The AST2700 features a dual-SoC architecture with two interconnected SoCs, 14*86dc1b92SBilly Tsai each having its own System Control Unit (SCU) for independent pin control. 15*86dc1b92SBilly Tsai This pin controller manages the pin multiplexing for SoC0. 16*86dc1b92SBilly Tsai 17*86dc1b92SBilly Tsai The SoC0 pin controller manages pin functions including eMMC, VGA DDC, 18*86dc1b92SBilly Tsai dual USB3/USB2 ports (A and B), JTAG, and PCIe root complex interfaces. 19*86dc1b92SBilly Tsai 20*86dc1b92SBilly Tsaiproperties: 21*86dc1b92SBilly Tsai compatible: 22*86dc1b92SBilly Tsai const: aspeed,ast2700-soc0-pinctrl 23*86dc1b92SBilly Tsai 24*86dc1b92SBilly Tsai reg: 25*86dc1b92SBilly Tsai maxItems: 1 26*86dc1b92SBilly Tsai 27*86dc1b92SBilly TsaipatternProperties: 28*86dc1b92SBilly Tsai '-state$': 29*86dc1b92SBilly Tsai description: | 30*86dc1b92SBilly Tsai Pin control state. 31*86dc1b92SBilly Tsai 32*86dc1b92SBilly Tsai If 'function' is present, the node describes a pinmux state and must 33*86dc1b92SBilly Tsai specify 'groups'. 34*86dc1b92SBilly Tsai 35*86dc1b92SBilly Tsai For pin configuration, exactly one of 'groups' or 'pins' must be 36*86dc1b92SBilly Tsai specified in each state node. Group-level configuration applies to all 37*86dc1b92SBilly Tsai pins in the group. Pin-level configuration may be supplied in a 38*86dc1b92SBilly Tsai separate state node for individual pins; when both group-level and 39*86dc1b92SBilly Tsai pin-level configuration apply to the same pin, the pin-level 40*86dc1b92SBilly Tsai configuration takes precedence. 41*86dc1b92SBilly Tsai 42*86dc1b92SBilly Tsai type: object 43*86dc1b92SBilly Tsai allOf: 44*86dc1b92SBilly Tsai - $ref: pinmux-node.yaml# 45*86dc1b92SBilly Tsai - $ref: pincfg-node.yaml# 46*86dc1b92SBilly Tsai - if: 47*86dc1b92SBilly Tsai required: 48*86dc1b92SBilly Tsai - function 49*86dc1b92SBilly Tsai then: 50*86dc1b92SBilly Tsai required: 51*86dc1b92SBilly Tsai - groups 52*86dc1b92SBilly Tsai - oneOf: 53*86dc1b92SBilly Tsai - required: 54*86dc1b92SBilly Tsai - groups 55*86dc1b92SBilly Tsai - required: 56*86dc1b92SBilly Tsai - pins 57*86dc1b92SBilly Tsai 58*86dc1b92SBilly Tsai additionalProperties: false 59*86dc1b92SBilly Tsai 60*86dc1b92SBilly Tsai properties: 61*86dc1b92SBilly Tsai function: 62*86dc1b92SBilly Tsai enum: 63*86dc1b92SBilly Tsai - EMMC 64*86dc1b92SBilly Tsai - JTAGDDR 65*86dc1b92SBilly Tsai - JTAGM0 66*86dc1b92SBilly Tsai - JTAGPCIEA 67*86dc1b92SBilly Tsai - JTAGPCIEB 68*86dc1b92SBilly Tsai - JTAGPSP 69*86dc1b92SBilly Tsai - JTAGSSP 70*86dc1b92SBilly Tsai - JTAGTSP 71*86dc1b92SBilly Tsai - JTAGUSB3A 72*86dc1b92SBilly Tsai - JTAGUSB3B 73*86dc1b92SBilly Tsai - PCIERC0PERST 74*86dc1b92SBilly Tsai - PCIERC1PERST 75*86dc1b92SBilly Tsai - TSPRSTN 76*86dc1b92SBilly Tsai - UFSCLKI 77*86dc1b92SBilly Tsai - USB2AD0 78*86dc1b92SBilly Tsai - USB2AD1 79*86dc1b92SBilly Tsai - USB2AH 80*86dc1b92SBilly Tsai - USB2AHP 81*86dc1b92SBilly Tsai - USB2AHPD0 82*86dc1b92SBilly Tsai - USB2AXH 83*86dc1b92SBilly Tsai - USB2AXH2B 84*86dc1b92SBilly Tsai - USB2AXHD1 85*86dc1b92SBilly Tsai - USB2AXHP 86*86dc1b92SBilly Tsai - USB2AXHP2B 87*86dc1b92SBilly Tsai - USB2AXHPD1 88*86dc1b92SBilly Tsai - USB2BD0 89*86dc1b92SBilly Tsai - USB2BD1 90*86dc1b92SBilly Tsai - USB2BH 91*86dc1b92SBilly Tsai - USB2BHP 92*86dc1b92SBilly Tsai - USB2BHPD0 93*86dc1b92SBilly Tsai - USB2BXH 94*86dc1b92SBilly Tsai - USB2BXH2A 95*86dc1b92SBilly Tsai - USB2BXHD1 96*86dc1b92SBilly Tsai - USB2BXHP 97*86dc1b92SBilly Tsai - USB2BXHP2A 98*86dc1b92SBilly Tsai - USB2BXHPD1 99*86dc1b92SBilly Tsai - USB3AXH 100*86dc1b92SBilly Tsai - USB3AXH2B 101*86dc1b92SBilly Tsai - USB3AXHD 102*86dc1b92SBilly Tsai - USB3AXHP 103*86dc1b92SBilly Tsai - USB3AXHP2B 104*86dc1b92SBilly Tsai - USB3AXHPD 105*86dc1b92SBilly Tsai - USB3BXH 106*86dc1b92SBilly Tsai - USB3BXH2A 107*86dc1b92SBilly Tsai - USB3BXHD 108*86dc1b92SBilly Tsai - USB3BXHP 109*86dc1b92SBilly Tsai - USB3BXHP2A 110*86dc1b92SBilly Tsai - USB3BXHPD 111*86dc1b92SBilly Tsai - VB 112*86dc1b92SBilly Tsai - VGADDC 113*86dc1b92SBilly Tsai 114*86dc1b92SBilly Tsai groups: 115*86dc1b92SBilly Tsai enum: 116*86dc1b92SBilly Tsai - EMMCCDN 117*86dc1b92SBilly Tsai - EMMCG1 118*86dc1b92SBilly Tsai - EMMCG4 119*86dc1b92SBilly Tsai - EMMCG8 120*86dc1b92SBilly Tsai - EMMCWPN 121*86dc1b92SBilly Tsai - JTAG0 122*86dc1b92SBilly Tsai - PCIERC0PERST 123*86dc1b92SBilly Tsai - PCIERC1PERST 124*86dc1b92SBilly Tsai - TSPRSTN 125*86dc1b92SBilly Tsai - UFSCLKI 126*86dc1b92SBilly Tsai - USB2A 127*86dc1b92SBilly Tsai - USB2AAP 128*86dc1b92SBilly Tsai - USB2ABP 129*86dc1b92SBilly Tsai - USB2ADAP 130*86dc1b92SBilly Tsai - USB2AH 131*86dc1b92SBilly Tsai - USB2AHAP 132*86dc1b92SBilly Tsai - USB2B 133*86dc1b92SBilly Tsai - USB2BAP 134*86dc1b92SBilly Tsai - USB2BBP 135*86dc1b92SBilly Tsai - USB2BDBP 136*86dc1b92SBilly Tsai - USB2BH 137*86dc1b92SBilly Tsai - USB2BHBP 138*86dc1b92SBilly Tsai - USB3A 139*86dc1b92SBilly Tsai - USB3AAP 140*86dc1b92SBilly Tsai - USB3ABP 141*86dc1b92SBilly Tsai - USB3B 142*86dc1b92SBilly Tsai - USB3BAP 143*86dc1b92SBilly Tsai - USB3BBP 144*86dc1b92SBilly Tsai - VB0 145*86dc1b92SBilly Tsai - VB1 146*86dc1b92SBilly Tsai - VGADDC 147*86dc1b92SBilly Tsai 148*86dc1b92SBilly Tsai pins: 149*86dc1b92SBilly Tsai enum: 150*86dc1b92SBilly Tsai - AB13 151*86dc1b92SBilly Tsai - AB14 152*86dc1b92SBilly Tsai - AC13 153*86dc1b92SBilly Tsai - AC14 154*86dc1b92SBilly Tsai - AD13 155*86dc1b92SBilly Tsai - AD14 156*86dc1b92SBilly Tsai - AE13 157*86dc1b92SBilly Tsai - AE14 158*86dc1b92SBilly Tsai - AE15 159*86dc1b92SBilly Tsai - AF13 160*86dc1b92SBilly Tsai - AF14 161*86dc1b92SBilly Tsai - AF15 162*86dc1b92SBilly Tsai 163*86dc1b92SBilly Tsai drive-strength: 164*86dc1b92SBilly Tsai enum: [3, 6, 8, 11, 16, 18, 20, 23, 30, 32, 33, 35, 37, 38, 39, 41] 165*86dc1b92SBilly Tsai 166*86dc1b92SBilly Tsai bias-disable: true 167*86dc1b92SBilly Tsai bias-pull-up: true 168*86dc1b92SBilly Tsai bias-pull-down: true 169*86dc1b92SBilly Tsai 170*86dc1b92SBilly Tsairequired: 171*86dc1b92SBilly Tsai - compatible 172*86dc1b92SBilly Tsai - reg 173*86dc1b92SBilly Tsai 174*86dc1b92SBilly TsaiallOf: 175*86dc1b92SBilly Tsai - $ref: pinctrl.yaml# 176*86dc1b92SBilly Tsai 177*86dc1b92SBilly TsaiadditionalProperties: false 178*86dc1b92SBilly Tsai 179*86dc1b92SBilly Tsaiexamples: 180*86dc1b92SBilly Tsai - | 181*86dc1b92SBilly Tsai pinctrl@400 { 182*86dc1b92SBilly Tsai compatible = "aspeed,ast2700-soc0-pinctrl"; 183*86dc1b92SBilly Tsai reg = <0x400 0x318>; 184*86dc1b92SBilly Tsai emmc-state { 185*86dc1b92SBilly Tsai function = "EMMC"; 186*86dc1b92SBilly Tsai groups = "EMMCG1"; 187*86dc1b92SBilly Tsai }; 188*86dc1b92SBilly Tsai }; 189