1*b2441318SGreg Kroah-Hartman /* SPDX-License-Identifier: GPL-2.0 */ 289a7117dSIvan T. Ivanov /* 389a7117dSIvan T. Ivanov * This header provides constants for the Qualcomm PMIC's 489a7117dSIvan T. Ivanov * Multi-Purpose Pin binding. 589a7117dSIvan T. Ivanov */ 689a7117dSIvan T. Ivanov 789a7117dSIvan T. Ivanov #ifndef _DT_BINDINGS_PINCTRL_QCOM_PMIC_MPP_H 889a7117dSIvan T. Ivanov #define _DT_BINDINGS_PINCTRL_QCOM_PMIC_MPP_H 989a7117dSIvan T. Ivanov 1089a7117dSIvan T. Ivanov /* power-source */ 11b4c45fe9SBjorn Andersson 12b4c45fe9SBjorn Andersson /* Digital Input/Output: level [PM8058] */ 13b4c45fe9SBjorn Andersson #define PM8058_MPP_VPH 0 14b4c45fe9SBjorn Andersson #define PM8058_MPP_S3 1 15b4c45fe9SBjorn Andersson #define PM8058_MPP_L2 2 16b4c45fe9SBjorn Andersson #define PM8058_MPP_L3 3 17b4c45fe9SBjorn Andersson 18b4c45fe9SBjorn Andersson /* Digital Input/Output: level [PM8901] */ 19b4c45fe9SBjorn Andersson #define PM8901_MPP_MSMIO 0 20b4c45fe9SBjorn Andersson #define PM8901_MPP_DIG 1 21b4c45fe9SBjorn Andersson #define PM8901_MPP_L5 2 22b4c45fe9SBjorn Andersson #define PM8901_MPP_S4 3 23b4c45fe9SBjorn Andersson #define PM8901_MPP_VPH 4 24b4c45fe9SBjorn Andersson 25b4c45fe9SBjorn Andersson /* Digital Input/Output: level [PM8921] */ 26b4c45fe9SBjorn Andersson #define PM8921_MPP_S4 1 27b4c45fe9SBjorn Andersson #define PM8921_MPP_L15 3 28b4c45fe9SBjorn Andersson #define PM8921_MPP_L17 4 29b4c45fe9SBjorn Andersson #define PM8921_MPP_VPH 7 30b4c45fe9SBjorn Andersson 31b4c45fe9SBjorn Andersson /* Digital Input/Output: level [PM8821] */ 32b4c45fe9SBjorn Andersson #define PM8821_MPP_1P8 0 33b4c45fe9SBjorn Andersson #define PM8821_MPP_VPH 7 34b4c45fe9SBjorn Andersson 35b4c45fe9SBjorn Andersson /* Digital Input/Output: level [PM8018] */ 36b4c45fe9SBjorn Andersson #define PM8018_MPP_L4 0 37b4c45fe9SBjorn Andersson #define PM8018_MPP_L14 1 38b4c45fe9SBjorn Andersson #define PM8018_MPP_S3 2 39b4c45fe9SBjorn Andersson #define PM8018_MPP_L6 3 40b4c45fe9SBjorn Andersson #define PM8018_MPP_L2 4 41b4c45fe9SBjorn Andersson #define PM8018_MPP_L5 5 42b4c45fe9SBjorn Andersson #define PM8018_MPP_VPH 7 43b4c45fe9SBjorn Andersson 44b4c45fe9SBjorn Andersson /* Digital Input/Output: level [PM8038] */ 45b4c45fe9SBjorn Andersson #define PM8038_MPP_L20 0 46b4c45fe9SBjorn Andersson #define PM8038_MPP_L11 1 47b4c45fe9SBjorn Andersson #define PM8038_MPP_L5 2 48b4c45fe9SBjorn Andersson #define PM8038_MPP_L15 3 49b4c45fe9SBjorn Andersson #define PM8038_MPP_L17 4 50b4c45fe9SBjorn Andersson #define PM8038_MPP_VPH 7 51b4c45fe9SBjorn Andersson 5289a7117dSIvan T. Ivanov #define PM8841_MPP_VPH 0 5389a7117dSIvan T. Ivanov #define PM8841_MPP_S3 2 5489a7117dSIvan T. Ivanov 557414b099SIvan T. Ivanov #define PM8916_MPP_VPH 0 567414b099SIvan T. Ivanov #define PM8916_MPP_L2 2 577414b099SIvan T. Ivanov #define PM8916_MPP_L5 3 587414b099SIvan T. Ivanov 5989a7117dSIvan T. Ivanov #define PM8941_MPP_VPH 0 6089a7117dSIvan T. Ivanov #define PM8941_MPP_L1 1 6189a7117dSIvan T. Ivanov #define PM8941_MPP_S3 2 6289a7117dSIvan T. Ivanov #define PM8941_MPP_L6 3 6389a7117dSIvan T. Ivanov 6489a7117dSIvan T. Ivanov #define PMA8084_MPP_VPH 0 6589a7117dSIvan T. Ivanov #define PMA8084_MPP_L1 1 6689a7117dSIvan T. Ivanov #define PMA8084_MPP_S4 2 6789a7117dSIvan T. Ivanov #define PMA8084_MPP_L6 3 6889a7117dSIvan T. Ivanov 69636959fcSSrinivas Kandagatla #define PM8994_MPP_VPH 0 70636959fcSSrinivas Kandagatla /* Only supported for MPP_05-MPP_08 */ 71636959fcSSrinivas Kandagatla #define PM8994_MPP_L19 1 72636959fcSSrinivas Kandagatla #define PM8994_MPP_S4 2 73636959fcSSrinivas Kandagatla #define PM8994_MPP_L12 3 74636959fcSSrinivas Kandagatla 7589a7117dSIvan T. Ivanov /* 7689a7117dSIvan T. Ivanov * Analog Input - Set the source for analog input. 7789a7117dSIvan T. Ivanov * To be used with "qcom,amux-route" property 7889a7117dSIvan T. Ivanov */ 7989a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_CH5 0 8089a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_CH6 1 8189a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_CH7 2 8289a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_CH8 3 8389a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_ABUS1 4 8489a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_ABUS2 5 8589a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_ABUS3 6 8689a7117dSIvan T. Ivanov #define PMIC_MPP_AMUX_ROUTE_ABUS4 7 8789a7117dSIvan T. Ivanov 88b4c45fe9SBjorn Andersson /* Analog Output: level */ 89b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_1V25 0 90b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_1V25_2 1 91b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_0V625 2 92b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_0V3125 3 93b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_MPP 4 94b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_ABUS1 5 95b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_ABUS2 6 96b4c45fe9SBjorn Andersson #define PMIC_MPP_AOUT_LVL_ABUS3 7 97b4c45fe9SBjorn Andersson 9889a7117dSIvan T. Ivanov /* To be used with "function" */ 9989a7117dSIvan T. Ivanov #define PMIC_MPP_FUNC_NORMAL "normal" 10089a7117dSIvan T. Ivanov #define PMIC_MPP_FUNC_PAIRED "paired" 10189a7117dSIvan T. Ivanov #define PMIC_MPP_FUNC_DTEST1 "dtest1" 10289a7117dSIvan T. Ivanov #define PMIC_MPP_FUNC_DTEST2 "dtest2" 10389a7117dSIvan T. Ivanov #define PMIC_MPP_FUNC_DTEST3 "dtest3" 10489a7117dSIvan T. Ivanov #define PMIC_MPP_FUNC_DTEST4 "dtest4" 10589a7117dSIvan T. Ivanov 10689a7117dSIvan T. Ivanov #endif 107