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