xref: /linux/include/linux/regulator/tps51632-regulator.h (revision 0c57067430a2b729bc08c92b17eb4f29d9bbfaae)
1*0c570674SLaxman Dewangan /*
2*0c570674SLaxman Dewangan  * tps51632-regulator.h -- TPS51632 regulator
3*0c570674SLaxman Dewangan  *
4*0c570674SLaxman Dewangan  * Interface for regulator driver for TPS51632 3-2-1 Phase D-Cap Step Down
5*0c570674SLaxman Dewangan  * Driverless Controller with serial VID control and DVFS.
6*0c570674SLaxman Dewangan  *
7*0c570674SLaxman Dewangan  * Copyright (C) 2012 NVIDIA Corporation
8*0c570674SLaxman Dewangan 
9*0c570674SLaxman Dewangan  * Author: Laxman Dewangan <ldewangan@nvidia.com>
10*0c570674SLaxman Dewangan  *
11*0c570674SLaxman Dewangan  * This program is free software; you can redistribute it and/or modify
12*0c570674SLaxman Dewangan  * it under the terms of the GNU General Public License as published by
13*0c570674SLaxman Dewangan  * the Free Software Foundation; either version 2 of the License, or
14*0c570674SLaxman Dewangan  * (at your option) any later version.
15*0c570674SLaxman Dewangan  *
16*0c570674SLaxman Dewangan  * This program is distributed in the hope that it will be useful, but WITHOUT
17*0c570674SLaxman Dewangan  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
18*0c570674SLaxman Dewangan  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
19*0c570674SLaxman Dewangan  * more details.
20*0c570674SLaxman Dewangan  *
21*0c570674SLaxman Dewangan  * You should have received a copy of the GNU General Public License along
22*0c570674SLaxman Dewangan  * with this program; if not, write to the Free Software Foundation, Inc.,
23*0c570674SLaxman Dewangan  * 51 Franklin Street, Fifth Floor, Boston, MA	02110-1301, USA.
24*0c570674SLaxman Dewangan  *
25*0c570674SLaxman Dewangan  */
26*0c570674SLaxman Dewangan 
27*0c570674SLaxman Dewangan #ifndef __LINUX_REGULATOR_TPS51632_H
28*0c570674SLaxman Dewangan #define __LINUX_REGULATOR_TPS51632_H
29*0c570674SLaxman Dewangan 
30*0c570674SLaxman Dewangan /*
31*0c570674SLaxman Dewangan  * struct tps51632_regulator_platform_data - tps51632 regulator platform data.
32*0c570674SLaxman Dewangan  *
33*0c570674SLaxman Dewangan  * @reg_init_data: The regulator init data.
34*0c570674SLaxman Dewangan  * @enable_pwm_dvfs: Enable PWM DVFS or not.
35*0c570674SLaxman Dewangan  * @dvfs_step_20mV: Step for DVFS is 20mV or 10mV.
36*0c570674SLaxman Dewangan  * @max_voltage_uV: Maximum possible voltage in PWM-DVFS mode.
37*0c570674SLaxman Dewangan  * @base_voltage_uV: Base voltage when PWM-DVFS enabled.
38*0c570674SLaxman Dewangan  */
39*0c570674SLaxman Dewangan struct tps51632_regulator_platform_data {
40*0c570674SLaxman Dewangan 	struct regulator_init_data *reg_init_data;
41*0c570674SLaxman Dewangan 	bool enable_pwm_dvfs;
42*0c570674SLaxman Dewangan 	bool dvfs_step_20mV;
43*0c570674SLaxman Dewangan 	int max_voltage_uV;
44*0c570674SLaxman Dewangan 	int base_voltage_uV;
45*0c570674SLaxman Dewangan };
46*0c570674SLaxman Dewangan 
47*0c570674SLaxman Dewangan #endif /* __LINUX_REGULATOR_TPS51632_H */
48