xref: /freebsd/sys/contrib/device-tree/Bindings/pinctrl/samsung,pinctrl-pins-cfg.yaml (revision 7ef62cebc2f965b0f640263e179276928885e33d)
1*c9ccf3a3SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*c9ccf3a3SEmmanuel Vadot%YAML 1.2
3*c9ccf3a3SEmmanuel Vadot---
4*c9ccf3a3SEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/samsung,pinctrl-pins-cfg.yaml#
5*c9ccf3a3SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml#
6*c9ccf3a3SEmmanuel Vadot
7*c9ccf3a3SEmmanuel Vadottitle: Samsung S3C/S5P/Exynos SoC pin controller - pins configuration
8*c9ccf3a3SEmmanuel Vadot
9*c9ccf3a3SEmmanuel Vadotmaintainers:
10*c9ccf3a3SEmmanuel Vadot  - Krzysztof Kozlowski <krzk@kernel.org>
11*c9ccf3a3SEmmanuel Vadot  - Sylwester Nawrocki <s.nawrocki@samsung.com>
12*c9ccf3a3SEmmanuel Vadot  - Tomasz Figa <tomasz.figa@gmail.com>
13*c9ccf3a3SEmmanuel Vadot
14*c9ccf3a3SEmmanuel Vadotdescription: |
15*c9ccf3a3SEmmanuel Vadot  This is a part of device tree bindings for Samsung S3C/S5P/Exynos SoC pin
16*c9ccf3a3SEmmanuel Vadot  controller.
17*c9ccf3a3SEmmanuel Vadot
18*c9ccf3a3SEmmanuel Vadot  Pins configuration for Samsung S3C/S5P/Exynos SoC pin controller.
19*c9ccf3a3SEmmanuel Vadot
20*c9ccf3a3SEmmanuel Vadot  The values used for config properties should be derived from the hardware
21*c9ccf3a3SEmmanuel Vadot  manual and these values are programmed as-is into the pin pull up/down and
22*c9ccf3a3SEmmanuel Vadot  driver strength register of the pin-controller.
23*c9ccf3a3SEmmanuel Vadot
24*c9ccf3a3SEmmanuel Vadot  See also Documentation/devicetree/bindings/pinctrl/samsung,pinctrl.yaml for
25*c9ccf3a3SEmmanuel Vadot  additional information and example.
26*c9ccf3a3SEmmanuel Vadot
27*c9ccf3a3SEmmanuel Vadotproperties:
28*c9ccf3a3SEmmanuel Vadot  samsung,pins:
29*c9ccf3a3SEmmanuel Vadot    description: |
30*c9ccf3a3SEmmanuel Vadot      List of pins to configure. For initial and sleep states, the maximum
31*c9ccf3a3SEmmanuel Vadot      number is one pin. In other cases there is no upper limit.
32*c9ccf3a3SEmmanuel Vadot
33*c9ccf3a3SEmmanuel Vadot      The pins should use lowercase names matching hardware manual, e.g. for
34*c9ccf3a3SEmmanuel Vadot      GPA0 bank: gpa0-0, gpa0-1, gpa0-2.
35*c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/string-array
36*c9ccf3a3SEmmanuel Vadot
37*c9ccf3a3SEmmanuel Vadot  samsung,pin-function:
38*c9ccf3a3SEmmanuel Vadot    description: |
39*c9ccf3a3SEmmanuel Vadot      The pin function selection that should be applied on the pins listed in the
40*c9ccf3a3SEmmanuel Vadot      child node is specified using the "samsung,pin-function" property. The value
41*c9ccf3a3SEmmanuel Vadot      of this property that should be applied to each of the pins listed in the
42*c9ccf3a3SEmmanuel Vadot      "samsung,pins" property should be picked from the hardware manual of the SoC
43*c9ccf3a3SEmmanuel Vadot      for the specified pin group. This property is optional in the child node if
44*c9ccf3a3SEmmanuel Vadot      no specific function selection is desired for the pins listed in the child
45*c9ccf3a3SEmmanuel Vadot      node. The value of this property is used as-is to program the pin-controller
46*c9ccf3a3SEmmanuel Vadot      function selector register of the pin-bank.
47*c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
48*c9ccf3a3SEmmanuel Vadot    minimum: 0
49*c9ccf3a3SEmmanuel Vadot    maximum: 15
50*c9ccf3a3SEmmanuel Vadot
51*c9ccf3a3SEmmanuel Vadot  samsung,pin-drv:
52*c9ccf3a3SEmmanuel Vadot    description: Drive strength configuration.
53*c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
54*c9ccf3a3SEmmanuel Vadot    minimum: 0
55*c9ccf3a3SEmmanuel Vadot    maximum: 15
56*c9ccf3a3SEmmanuel Vadot
57*c9ccf3a3SEmmanuel Vadot  samsung,pin-pud:
58*c9ccf3a3SEmmanuel Vadot    description: Pull up/down configuration.
59*c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
60*c9ccf3a3SEmmanuel Vadot    enum: [0, 1, 2, 3]
61*c9ccf3a3SEmmanuel Vadot
62*c9ccf3a3SEmmanuel Vadot  samsung,pin-val:
63*c9ccf3a3SEmmanuel Vadot    description: Initial value of pin output buffer.
64*c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
65*c9ccf3a3SEmmanuel Vadot    enum: [0, 1]
66*c9ccf3a3SEmmanuel Vadot
67*c9ccf3a3SEmmanuel Vadot  samsung,pin-con-pdn:
68*c9ccf3a3SEmmanuel Vadot    description: Function in power down mode.
69*c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
70*c9ccf3a3SEmmanuel Vadot    enum: [0, 1, 2, 3]
71*c9ccf3a3SEmmanuel Vadot
72*c9ccf3a3SEmmanuel Vadot  samsung,pin-pud-pdn:
73*c9ccf3a3SEmmanuel Vadot    description: Pull up/down configuration in power down mode.
74*c9ccf3a3SEmmanuel Vadot    $ref: /schemas/types.yaml#/definitions/uint32
75*c9ccf3a3SEmmanuel Vadot    enum: [0, 1, 2, 3]
76*c9ccf3a3SEmmanuel Vadot
77*c9ccf3a3SEmmanuel Vadotrequired:
78*c9ccf3a3SEmmanuel Vadot  - samsung,pins
79*c9ccf3a3SEmmanuel Vadot
80*c9ccf3a3SEmmanuel VadotadditionalProperties: false
81