Merge tag 'for-5.4/post-2019-09-24' of git://git.kernel.dk/linux-block
[sfrench/cifs-2.6.git] / include / dt-bindings / pinctrl / qcom,pmic-mpp.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 /*
3  * This header provides constants for the Qualcomm PMIC's
4  * Multi-Purpose Pin binding.
5  */
6
7 #ifndef _DT_BINDINGS_PINCTRL_QCOM_PMIC_MPP_H
8 #define _DT_BINDINGS_PINCTRL_QCOM_PMIC_MPP_H
9
10 /* power-source */
11
12 /* Digital Input/Output: level [PM8058] */
13 #define PM8058_MPP_VPH                  0
14 #define PM8058_MPP_S3                   1
15 #define PM8058_MPP_L2                   2
16 #define PM8058_MPP_L3                   3
17
18 /* Digital Input/Output: level [PM8901] */
19 #define PM8901_MPP_MSMIO                0
20 #define PM8901_MPP_DIG                  1
21 #define PM8901_MPP_L5                   2
22 #define PM8901_MPP_S4                   3
23 #define PM8901_MPP_VPH                  4
24
25 /* Digital Input/Output: level [PM8921] */
26 #define PM8921_MPP_S4                   1
27 #define PM8921_MPP_L15                  3
28 #define PM8921_MPP_L17                  4
29 #define PM8921_MPP_VPH                  7
30
31 /* Digital Input/Output: level [PM8821] */
32 #define PM8821_MPP_1P8                  0
33 #define PM8821_MPP_VPH                  7
34
35 /* Digital Input/Output: level [PM8018] */
36 #define PM8018_MPP_L4                   0
37 #define PM8018_MPP_L14                  1
38 #define PM8018_MPP_S3                   2
39 #define PM8018_MPP_L6                   3
40 #define PM8018_MPP_L2                   4
41 #define PM8018_MPP_L5                   5
42 #define PM8018_MPP_VPH                  7
43
44 /* Digital Input/Output: level [PM8038] */
45 #define PM8038_MPP_L20                  0
46 #define PM8038_MPP_L11                  1
47 #define PM8038_MPP_L5                   2
48 #define PM8038_MPP_L15                  3
49 #define PM8038_MPP_L17                  4
50 #define PM8038_MPP_VPH                  7
51
52 #define PM8841_MPP_VPH                  0
53 #define PM8841_MPP_S3                   2
54
55 #define PM8916_MPP_VPH                  0
56 #define PM8916_MPP_L2                   2
57 #define PM8916_MPP_L5                   3
58
59 #define PM8941_MPP_VPH                  0
60 #define PM8941_MPP_L1                   1
61 #define PM8941_MPP_S3                   2
62 #define PM8941_MPP_L6                   3
63
64 #define PMA8084_MPP_VPH                 0
65 #define PMA8084_MPP_L1                  1
66 #define PMA8084_MPP_S4                  2
67 #define PMA8084_MPP_L6                  3
68
69 #define PM8994_MPP_VPH                  0
70 /* Only supported for MPP_05-MPP_08 */
71 #define PM8994_MPP_L19                  1
72 #define PM8994_MPP_S4                   2
73 #define PM8994_MPP_L12                  3
74
75 /*
76  * Analog Input - Set the source for analog input.
77  * To be used with "qcom,amux-route" property
78  */
79 #define PMIC_MPP_AMUX_ROUTE_CH5         0
80 #define PMIC_MPP_AMUX_ROUTE_CH6         1
81 #define PMIC_MPP_AMUX_ROUTE_CH7         2
82 #define PMIC_MPP_AMUX_ROUTE_CH8         3
83 #define PMIC_MPP_AMUX_ROUTE_ABUS1       4
84 #define PMIC_MPP_AMUX_ROUTE_ABUS2       5
85 #define PMIC_MPP_AMUX_ROUTE_ABUS3       6
86 #define PMIC_MPP_AMUX_ROUTE_ABUS4       7
87
88 /* Analog Output: level */
89 #define PMIC_MPP_AOUT_LVL_1V25          0
90 #define PMIC_MPP_AOUT_LVL_1V25_2        1
91 #define PMIC_MPP_AOUT_LVL_0V625         2
92 #define PMIC_MPP_AOUT_LVL_0V3125        3
93 #define PMIC_MPP_AOUT_LVL_MPP           4
94 #define PMIC_MPP_AOUT_LVL_ABUS1         5
95 #define PMIC_MPP_AOUT_LVL_ABUS2         6
96 #define PMIC_MPP_AOUT_LVL_ABUS3         7
97
98 /* To be used with "function" */
99 #define PMIC_MPP_FUNC_NORMAL            "normal"
100 #define PMIC_MPP_FUNC_PAIRED            "paired"
101 #define PMIC_MPP_FUNC_DTEST1            "dtest1"
102 #define PMIC_MPP_FUNC_DTEST2            "dtest2"
103 #define PMIC_MPP_FUNC_DTEST3            "dtest3"
104 #define PMIC_MPP_FUNC_DTEST4            "dtest4"
105
106 #endif