mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-08-27 11:19:37 +00:00
![Thomas Gleixner](/assets/img/avatar_default.png)
Based on 2 normalized pattern(s): this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option any later version this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details you should have received a copy of the gnu general public license along with this program if not write to the free software foundation inc 51 franklin street fifth floor boston ma 02110 1301 usa this program is free software you can redistribute it and or modify it under the terms of the gnu general public license as published by the free software foundation either version 2 of the license or at your option [no]_[pad]_[ctrl] any later version this program is distributed in the hope that it will be useful but without any warranty without even the implied warranty of merchantability or fitness for a particular purpose see the gnu general public license for more details you should have received a copy of the gnu general public license along with this program if not write to the free software foundation inc 51 franklin street fifth floor boston ma 02110 1301 usa extracted by the scancode license scanner the SPDX license identifier GPL-2.0-or-later has been chosen to replace the boilerplate/reference in 176 file(s). Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Jilayne Lovejoy <opensource@jilayne.com> Reviewed-by: Steve Winslow <swinslow@gmail.com> Reviewed-by: Allison Randal <allison@lohutok.net> Reviewed-by: Kate Stewart <kstewart@linuxfoundation.org> Cc: linux-spdx@vger.kernel.org Link: https://lkml.kernel.org/r/20190519154040.652910950@linutronix.de Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
67 lines
2.5 KiB
C
67 lines
2.5 KiB
C
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
|
/*
|
|
* max8973-regulator.h -- MAXIM 8973 regulator
|
|
*
|
|
* Interface for regulator driver for MAXIM 8973 DC-DC step-down
|
|
* switching regulator.
|
|
*
|
|
* Copyright (C) 2012 NVIDIA Corporation
|
|
|
|
* Author: Laxman Dewangan <ldewangan@nvidia.com>
|
|
*/
|
|
|
|
#ifndef __LINUX_REGULATOR_MAX8973_H
|
|
#define __LINUX_REGULATOR_MAX8973_H
|
|
|
|
/*
|
|
* Control flags for configuration of the device.
|
|
* Client need to pass this information with ORed
|
|
*/
|
|
#define MAX8973_CONTROL_REMOTE_SENSE_ENABLE 0x00000001
|
|
#define MAX8973_CONTROL_FALLING_SLEW_RATE_ENABLE 0x00000002
|
|
#define MAX8973_CONTROL_OUTPUT_ACTIVE_DISCH_ENABLE 0x00000004
|
|
#define MAX8973_CONTROL_BIAS_ENABLE 0x00000008
|
|
#define MAX8973_CONTROL_PULL_DOWN_ENABLE 0x00000010
|
|
#define MAX8973_CONTROL_FREQ_SHIFT_9PER_ENABLE 0x00000020
|
|
|
|
#define MAX8973_CONTROL_CLKADV_TRIP_DISABLED 0x00000000
|
|
#define MAX8973_CONTROL_CLKADV_TRIP_75mV_PER_US 0x00010000
|
|
#define MAX8973_CONTROL_CLKADV_TRIP_150mV_PER_US 0x00020000
|
|
#define MAX8973_CONTROL_CLKADV_TRIP_75mV_PER_US_HIST_DIS 0x00030000
|
|
|
|
#define MAX8973_CONTROL_INDUCTOR_VALUE_NOMINAL 0x00000000
|
|
#define MAX8973_CONTROL_INDUCTOR_VALUE_MINUS_30_PER 0x00100000
|
|
#define MAX8973_CONTROL_INDUCTOR_VALUE_PLUS_30_PER 0x00200000
|
|
#define MAX8973_CONTROL_INDUCTOR_VALUE_PLUS_60_PER 0x00300000
|
|
|
|
/*
|
|
* struct max8973_regulator_platform_data - max8973 regulator platform data.
|
|
*
|
|
* @reg_init_data: The regulator init data.
|
|
* @control_flags: Control flags which are ORed value of above flags to
|
|
* configure device.
|
|
* @junction_temp_warning: Junction temp in millicelcius on which warning need
|
|
* to be set. Thermal functionality is only supported on
|
|
* MAX77621. The threshold warning supported by MAX77621
|
|
* are 120C and 140C.
|
|
* @enable_ext_control: Enable the voltage enable/disable through external
|
|
* control signal from EN input pin. If it is false then
|
|
* voltage output will be enabled/disabled through EN bit of
|
|
* device register.
|
|
* @enable_gpio: Enable GPIO. If EN pin is controlled through GPIO from host
|
|
* then GPIO number can be provided. If no GPIO controlled then
|
|
* it should be -1.
|
|
* @dvs_gpio: GPIO for dvs. It should be -1 if this is tied with fixed logic.
|
|
* @dvs_def_state: Default state of dvs. 1 if it is high else 0.
|
|
*/
|
|
struct max8973_regulator_platform_data {
|
|
struct regulator_init_data *reg_init_data;
|
|
unsigned long control_flags;
|
|
unsigned long junction_temp_warning;
|
|
bool enable_ext_control;
|
|
int enable_gpio;
|
|
int dvs_gpio;
|
|
unsigned dvs_def_state:1;
|
|
};
|
|
|
|
#endif /* __LINUX_REGULATOR_MAX8973_H */
|