1 /* SPDX-License-Identifier: GPL-2.0 */
3 * This header provides constants for the Qualcomm PMIC's
4 * Multi-Purpose Pin binding.
7 #ifndef _DT_BINDINGS_PINCTRL_QCOM_PMIC_MPP_H
8 #define _DT_BINDINGS_PINCTRL_QCOM_PMIC_MPP_H
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
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
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
31 /* Digital Input/Output: level [PM8821] */
32 #define PM8821_MPP_1P8 0
33 #define PM8821_MPP_VPH 7
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
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
52 #define PM8841_MPP_VPH 0
53 #define PM8841_MPP_S3 2
55 #define PM8916_MPP_VPH 0
56 #define PM8916_MPP_L2 2
57 #define PM8916_MPP_L5 3
59 #define PM8941_MPP_VPH 0
60 #define PM8941_MPP_L1 1
61 #define PM8941_MPP_S3 2
62 #define PM8941_MPP_L6 3
64 #define PMA8084_MPP_VPH 0
65 #define PMA8084_MPP_L1 1
66 #define PMA8084_MPP_S4 2
67 #define PMA8084_MPP_L6 3
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
76 * Analog Input - Set the source for analog input.
77 * To be used with "qcom,amux-route" property
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
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
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"