1*329b71cdSGary Yang# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause 2*329b71cdSGary Yang%YAML 1.2 3*329b71cdSGary Yang--- 4*329b71cdSGary Yang$id: http://devicetree.org/schemas/pinctrl/cix,sky1-pinctrl.yaml# 5*329b71cdSGary Yang$schema: http://devicetree.org/meta-schemas/core.yaml# 6*329b71cdSGary Yang 7*329b71cdSGary Yangtitle: Cix Sky1 Soc Pin Controller 8*329b71cdSGary Yang 9*329b71cdSGary Yangmaintainers: 10*329b71cdSGary Yang - Gary Yang <gary.yang@cixtech.com> 11*329b71cdSGary Yang 12*329b71cdSGary Yangdescription: 13*329b71cdSGary Yang The pin-controller is used to control Soc pins. There are two pin-controllers 14*329b71cdSGary Yang on Cix Sky1 platform. one is used under S0 state, the other one is used under 15*329b71cdSGary Yang S0 and S5 state. 16*329b71cdSGary Yang 17*329b71cdSGary Yangproperties: 18*329b71cdSGary Yang compatible: 19*329b71cdSGary Yang enum: 20*329b71cdSGary Yang - cix,sky1-pinctrl 21*329b71cdSGary Yang - cix,sky1-pinctrl-s5 22*329b71cdSGary Yang 23*329b71cdSGary Yang reg: 24*329b71cdSGary Yang items: 25*329b71cdSGary Yang - description: gpio base 26*329b71cdSGary Yang 27*329b71cdSGary YangpatternProperties: 28*329b71cdSGary Yang '-cfg$': 29*329b71cdSGary Yang type: object 30*329b71cdSGary Yang additionalProperties: false 31*329b71cdSGary Yang 32*329b71cdSGary Yang description: 33*329b71cdSGary Yang A pinctrl node should contain at least one subnode representing the 34*329b71cdSGary Yang pinctrl groups available on the machine. 35*329b71cdSGary Yang 36*329b71cdSGary Yang patternProperties: 37*329b71cdSGary Yang 'pins$': 38*329b71cdSGary Yang type: object 39*329b71cdSGary Yang additionalProperties: false 40*329b71cdSGary Yang 41*329b71cdSGary Yang description: 42*329b71cdSGary Yang Each subnode will list the pins it needs, and how they should 43*329b71cdSGary Yang be configured, with regard to muxer configuration, bias pull, 44*329b71cdSGary Yang and drive strength. 45*329b71cdSGary Yang 46*329b71cdSGary Yang allOf: 47*329b71cdSGary Yang - $ref: pincfg-node.yaml# 48*329b71cdSGary Yang - $ref: pinmux-node.yaml# 49*329b71cdSGary Yang 50*329b71cdSGary Yang properties: 51*329b71cdSGary Yang pinmux: 52*329b71cdSGary Yang description: 53*329b71cdSGary Yang Values are constructed from pin number and mux setting, pin 54*329b71cdSGary Yang number is left shifted by 8 bits, then ORed with mux setting 55*329b71cdSGary Yang 56*329b71cdSGary Yang bias-disable: true 57*329b71cdSGary Yang 58*329b71cdSGary Yang bias-pull-up: true 59*329b71cdSGary Yang 60*329b71cdSGary Yang bias-pull-down: true 61*329b71cdSGary Yang 62*329b71cdSGary Yang drive-strength: 63*329b71cdSGary Yang description: 64*329b71cdSGary Yang typical current when output high level. 65*329b71cdSGary Yang enum: [ 2, 3, 5, 6, 8, 9, 11, 12, 13, 14, 17, 18, 20, 21, 23, 66*329b71cdSGary Yang 24 ] 67*329b71cdSGary Yang 68*329b71cdSGary Yang required: 69*329b71cdSGary Yang - pinmux 70*329b71cdSGary Yang 71*329b71cdSGary Yangrequired: 72*329b71cdSGary Yang - compatible 73*329b71cdSGary Yang - reg 74*329b71cdSGary Yang 75*329b71cdSGary YangadditionalProperties: false 76*329b71cdSGary Yang 77*329b71cdSGary Yangexamples: 78*329b71cdSGary Yang - | 79*329b71cdSGary Yang #define CIX_PAD_GPIO012_FUNC_GPIO012 (11 << 8 | 0x0) 80*329b71cdSGary Yang pinctrl@4170000 { 81*329b71cdSGary Yang compatible = "cix,sky1-pinctrl"; 82*329b71cdSGary Yang reg = <0x4170000 0x1000>; 83*329b71cdSGary Yang 84*329b71cdSGary Yang wifi_vbat_gpio: wifi-vbat-gpio-cfg { 85*329b71cdSGary Yang pins { 86*329b71cdSGary Yang pinmux = <CIX_PAD_GPIO012_FUNC_GPIO012>; 87*329b71cdSGary Yang bias-pull-up; 88*329b71cdSGary Yang drive-strength = <8>; 89*329b71cdSGary Yang }; 90*329b71cdSGary Yang }; 91*329b71cdSGary Yang }; 92