xref: /netbsd-src/sys/external/gpl2/dts/dist/include/dt-bindings/regulator/qcom,rpmh-regulator.h (revision 976227fdc99bb6d4ab950558ecda48116723e145)
1 /*	$NetBSD: qcom,rpmh-regulator.h,v 1.1.1.1 2019/01/22 14:57:01 jmcneill Exp $	*/
2 
3 /* SPDX-License-Identifier: GPL-2.0 */
4 /* Copyright (c) 2018, The Linux Foundation. All rights reserved. */
5 
6 #ifndef __QCOM_RPMH_REGULATOR_H
7 #define __QCOM_RPMH_REGULATOR_H
8 
9 /*
10  * These mode constants may be used to specify modes for various RPMh regulator
11  * device tree properties (e.g. regulator-initial-mode).  Each type of regulator
12  * supports a subset of the possible modes.
13  *
14  * %RPMH_REGULATOR_MODE_RET:	Retention mode in which only an extremely small
15  *				load current is allowed.  This mode is supported
16  *				by LDO and SMPS type regulators.
17  * %RPMH_REGULATOR_MODE_LPM:	Low power mode in which a small load current is
18  *				allowed.  This mode corresponds to PFM for SMPS
19  *				and BOB type regulators.  This mode is supported
20  *				by LDO, HFSMPS, BOB, and PMIC4 FTSMPS type
21  *				regulators.
22  * %RPMH_REGULATOR_MODE_AUTO:	Auto mode in which the regulator hardware
23  *				automatically switches between LPM and HPM based
24  *				upon the real-time load current.  This mode is
25  *				supported by HFSMPS, BOB, and PMIC4 FTSMPS type
26  *				regulators.
27  * %RPMH_REGULATOR_MODE_HPM:	High power mode in which the full rated current
28  *				of the regulator is allowed.  This mode
29  *				corresponds to PWM for SMPS and BOB type
30  *				regulators.  This mode is supported by all types
31  *				of regulators.
32  */
33 #define RPMH_REGULATOR_MODE_RET		0
34 #define RPMH_REGULATOR_MODE_LPM		1
35 #define RPMH_REGULATOR_MODE_AUTO	2
36 #define RPMH_REGULATOR_MODE_HPM		3
37 
38 #endif
39