xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/ti,da850-pupd.txt (revision c66ec88fed842fbaad62c30d510644ceb7bd2d71)
1*c66ec88fSEmmanuel Vadot* Pin configuration for TI DA850/OMAP-L138/AM18x
2*c66ec88fSEmmanuel Vadot
3*c66ec88fSEmmanuel VadotThese SoCs have a separate controller for setting bias (internal pullup/down).
4*c66ec88fSEmmanuel VadotBias can only be selected for groups rather than individual pins.
5*c66ec88fSEmmanuel Vadot
6*c66ec88fSEmmanuel VadotRequired Properties:
7*c66ec88fSEmmanuel Vadot
8*c66ec88fSEmmanuel Vadot  - compatible: Must be "ti,da850-pupd"
9*c66ec88fSEmmanuel Vadot  - reg: Base address and length of the memory resource used by the pullup/down
10*c66ec88fSEmmanuel Vadot    controller hardware module.
11*c66ec88fSEmmanuel Vadot
12*c66ec88fSEmmanuel VadotThe controller node also acts as a container for pin group configuration nodes.
13*c66ec88fSEmmanuel VadotThe names of these groups are ignored.
14*c66ec88fSEmmanuel Vadot
15*c66ec88fSEmmanuel VadotPin Group Node Properties:
16*c66ec88fSEmmanuel Vadot
17*c66ec88fSEmmanuel Vadot- groups: An array of strings, each string containing the name of a pin group.
18*c66ec88fSEmmanuel Vadot          Valid names are "cp0".."cp31".
19*c66ec88fSEmmanuel Vadot
20*c66ec88fSEmmanuel VadotThe pin configuration parameters use the generic pinconf bindings defined in
21*c66ec88fSEmmanuel Vadotpinctrl-bindings.txt in this directory. The supported parameters are
22*c66ec88fSEmmanuel Vadotbias-disable, bias-pull-up, bias-pull-down.
23*c66ec88fSEmmanuel Vadot
24*c66ec88fSEmmanuel Vadot
25*c66ec88fSEmmanuel VadotExample
26*c66ec88fSEmmanuel Vadot-------
27*c66ec88fSEmmanuel Vadot
28*c66ec88fSEmmanuel VadotIn common dtsi file:
29*c66ec88fSEmmanuel Vadot
30*c66ec88fSEmmanuel Vadot	pinconf: pin-controller@22c00c {
31*c66ec88fSEmmanuel Vadot		compatible = "ti,da850-pupd";
32*c66ec88fSEmmanuel Vadot		reg = <0x22c00c 0x8>;
33*c66ec88fSEmmanuel Vadot	};
34*c66ec88fSEmmanuel Vadot
35*c66ec88fSEmmanuel VadotIn board-specific file:
36*c66ec88fSEmmanuel Vadot
37*c66ec88fSEmmanuel Vadot	&pinconf {
38*c66ec88fSEmmanuel Vadot		pinctrl-0 = <&pinconf_bias_groups>;
39*c66ec88fSEmmanuel Vadot		pinctrl-names = "default";
40*c66ec88fSEmmanuel Vadot
41*c66ec88fSEmmanuel Vadot		pinconf_bias_groups: bias-groups {
42*c66ec88fSEmmanuel Vadot			pull-up {
43*c66ec88fSEmmanuel Vadot				groups = "cp30", "cp31";
44*c66ec88fSEmmanuel Vadot				bias-pull-up;
45*c66ec88fSEmmanuel Vadot			};
46*c66ec88fSEmmanuel Vadot			pull-down {
47*c66ec88fSEmmanuel Vadot				groups = "cp29", "cp28";
48*c66ec88fSEmmanuel Vadot				bias-pull-down;
49*c66ec88fSEmmanuel Vadot			};
50*c66ec88fSEmmanuel Vadot			disable {
51*c66ec88fSEmmanuel Vadot				groups = "cp27", "cp26";
52*c66ec88fSEmmanuel Vadot				bias-disable;
53*c66ec88fSEmmanuel Vadot			};
54*c66ec88fSEmmanuel Vadot		};
55*c66ec88fSEmmanuel Vadot	};
56