/*
 * This header provides constants for the Qualcomm PMIC GPIO binding.
 */

#ifndef _DT_BINDINGS_PINCTRL_QCOM_PMIC_GPIO_H
#define _DT_BINDINGS_PINCTRL_QCOM_PMIC_GPIO_H

#define PMIC_GPIO_PULL_UP_30		0
#define PMIC_GPIO_PULL_UP_1P5		1
#define PMIC_GPIO_PULL_UP_31P5		2
#define PMIC_GPIO_PULL_UP_1P5_30	3

#define PMIC_GPIO_STRENGTH_NO		0
#define PMIC_GPIO_STRENGTH_HIGH		1
#define PMIC_GPIO_STRENGTH_MED		2
#define PMIC_GPIO_STRENGTH_LOW		3

/*
 * Note: PM8018 GPIO3 and GPIO4 are supporting
 * only S3 and L2 options (1.8V)
 */
#define PM8018_GPIO_L6			0
#define PM8018_GPIO_L5			1
#define PM8018_GPIO_S3			2
#define PM8018_GPIO_L14			3
#define PM8018_GPIO_L2			4
#define PM8018_GPIO_L4			5
#define PM8018_GPIO_VDD			6

/*
 * Note: PM8038 GPIO7 and GPIO8 are supporting
 * only L11 and L4 options (1.8V)
 */
#define PM8038_GPIO_VPH			0
#define PM8038_GPIO_BB			1
#define PM8038_GPIO_L11			2
#define PM8038_GPIO_L15			3
#define PM8038_GPIO_L4			4
#define PM8038_GPIO_L3			5
#define PM8038_GPIO_L17			6

#define PM8058_GPIO_VPH			0
#define PM8058_GPIO_BB			1
#define PM8058_GPIO_S3			2
#define PM8058_GPIO_L3			3
#define PM8058_GPIO_L7			4
#define PM8058_GPIO_L6			5
#define PM8058_GPIO_L5			6
#define PM8058_GPIO_L2			7

#define PM8917_GPIO_VPH			0
#define PM8917_GPIO_S4			2
#define PM8917_GPIO_L15			3
#define PM8917_GPIO_L4			4
#define PM8917_GPIO_L3			5
#define PM8917_GPIO_L17			6

#define PM8921_GPIO_VPH			0
#define PM8921_GPIO_BB			1
#define PM8921_GPIO_S4			2
#define PM8921_GPIO_L15			3
#define PM8921_GPIO_L4			4
#define PM8921_GPIO_L3			5
#define PM8921_GPIO_L17			6

/*
 * Note: PM8941 gpios from 15 to 18 are supporting
 * only S3 and L6 options (1.8V)
 */
#define PM8941_GPIO_VPH			0
#define PM8941_GPIO_L1			1
#define PM8941_GPIO_S3			2
#define PM8941_GPIO_L6			3

/*
 * Note: PMA8084 gpios from 15 to 18 are supporting
 * only S4 and L6 options (1.8V)
 */
#define PMA8084_GPIO_VPH		0
#define PMA8084_GPIO_L1			1
#define PMA8084_GPIO_S4			2
#define PMA8084_GPIO_L6			3

/* To be used with "function" */
#define PMIC_GPIO_FUNC_NORMAL		"normal"
#define PMIC_GPIO_FUNC_PAIRED		"paired"
#define PMIC_GPIO_FUNC_FUNC1		"func1"
#define PMIC_GPIO_FUNC_FUNC2		"func2"
#define PMIC_GPIO_FUNC_DTEST1		"dtest1"
#define PMIC_GPIO_FUNC_DTEST2		"dtest2"
#define PMIC_GPIO_FUNC_DTEST3		"dtest3"
#define PMIC_GPIO_FUNC_DTEST4		"dtest4"

#define PM8038_GPIO1_2_LPG_DRV		PMIC_GPIO_FUNC_FUNC1
#define PM8038_GPIO3_5V_BOOST_EN	PMIC_GPIO_FUNC_FUNC1
#define PM8038_GPIO4_SSBI_ALT_CLK	PMIC_GPIO_FUNC_FUNC1
#define PM8038_GPIO5_6_EXT_REG_EN	PMIC_GPIO_FUNC_FUNC1
#define PM8038_GPIO10_11_EXT_REG_EN	PMIC_GPIO_FUNC_FUNC1
#define PM8038_GPIO6_7_CLK		PMIC_GPIO_FUNC_FUNC1
#define PM8038_GPIO9_BAT_ALRM_OUT	PMIC_GPIO_FUNC_FUNC1
#define PM8038_GPIO6_12_KYPD_DRV	PMIC_GPIO_FUNC_FUNC2

#define PM8058_GPIO7_8_MP3_CLK		PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO7_8_BCLK_19P2MHZ	PMIC_GPIO_FUNC_FUNC2
#define PM8058_GPIO9_26_KYPD_DRV	PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO21_23_UART_TX	PMIC_GPIO_FUNC_FUNC2
#define PM8058_GPIO24_26_LPG_DRV	PMIC_GPIO_FUNC_FUNC2
#define PM8058_GPIO33_BCLK_19P2MHZ	PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO34_35_MP3_CLK	PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO36_BCLK_19P2MHZ	PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO37_UPL_OUT		PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO37_UART_M_RX		PMIC_GPIO_FUNC_FUNC2
#define PM8058_GPIO38_XO_SLEEP_CLK	PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO38_39_CLK_32KHZ	PMIC_GPIO_FUNC_FUNC2
#define PM8058_GPIO39_MP3_CLK		PMIC_GPIO_FUNC_FUNC1
#define PM8058_GPIO40_EXT_BB_EN		PMIC_GPIO_FUNC_FUNC1

#define PM8917_GPIO9_18_KEYP_DRV	PMIC_GPIO_FUNC_FUNC1
#define PM8917_GPIO20_BAT_ALRM_OUT	PMIC_GPIO_FUNC_FUNC1
#define PM8917_GPIO21_23_UART_TX	PMIC_GPIO_FUNC_FUNC2
#define PM8917_GPIO25_26_EXT_REG_EN	PMIC_GPIO_FUNC_FUNC1
#define PM8917_GPIO37_38_XO_SLEEP_CLK	PMIC_GPIO_FUNC_FUNC1
#define PM8917_GPIO37_38_MP3_CLK	PMIC_GPIO_FUNC_FUNC2

#define PM8941_GPIO9_14_KYPD_DRV	PMIC_GPIO_FUNC_FUNC1
#define PM8941_GPIO15_18_DIV_CLK	PMIC_GPIO_FUNC_FUNC1
#define PM8941_GPIO15_18_SLEEP_CLK	PMIC_GPIO_FUNC_FUNC2
#define PM8941_GPIO23_26_KYPD_DRV	PMIC_GPIO_FUNC_FUNC1
#define PM8941_GPIO23_26_LPG_DRV_HI	PMIC_GPIO_FUNC_FUNC2
#define PM8941_GPIO31_BAT_ALRM_OUT	PMIC_GPIO_FUNC_FUNC1
#define PM8941_GPIO33_36_LPG_DRV_3D	PMIC_GPIO_FUNC_FUNC1
#define PM8941_GPIO33_36_LPG_DRV_HI	PMIC_GPIO_FUNC_FUNC2

#define PMA8084_GPIO4_5_LPG_DRV		PMIC_GPIO_FUNC_FUNC1
#define PMA8084_GPIO7_10_LPG_DRV	PMIC_GPIO_FUNC_FUNC1
#define PMA8084_GPIO5_14_KEYP_DRV	PMIC_GPIO_FUNC_FUNC2
#define PMA8084_GPIO19_21_KEYP_DRV	PMIC_GPIO_FUNC_FUNC2
#define PMA8084_GPIO15_18_DIV_CLK	PMIC_GPIO_FUNC_FUNC1
#define PMA8084_GPIO15_18_SLEEP_CLK	PMIC_GPIO_FUNC_FUNC2
#define PMA8084_GPIO22_BAT_ALRM_OUT	PMIC_GPIO_FUNC_FUNC1

#endif
