Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6
* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/lrg/voltage-2.6: (27 commits) regulator: wm831x_reg_read() failure unnoticed in wm831x_aldo_get_mode() twl-regulator: Fix reg_disable functionality for 4030 and 6030 twl-regulator: Add turnon delay to reg_enable twl-regulator: Restore REMAP configuration in regulator probe twl-regulator: Add turnon-delay and REMAP config to twlreg_info struct twl-regulator: Define critical regulators as always_on twl-regulator: Add all twl4030 regulators to twlreg_info regulator: mc13783-regulator: correct the probing time. regulator: Fix unbalanced disables/enables in regulator_bulk_{enable,disable} error path regulator: core.c: Small coding style cleanup (indentation fixup) drivers/regulator: use PTR_ERR to get error code regulator: consumer.h - fix build when consumer.h is #included first. regulator/mc13783: various cleanups regulator/mc13783: rename source file to match other drivers Fix some AB3100 regulator issues regulator: keep index within bounds in da9034_get_ldo12_voltage() regulator: Ensure val is initialised in 88pm8607 choose_voltage() regulator: Remove duplicate consts from ab3100 regulator: Handle regulators without suspend mode configuration regulator: Factor out regulator name pretty printing ...
This commit is contained in:
@@ -41,6 +41,23 @@ struct wm831x_battery_pdata {
|
||||
int timeout; /** Charge cycle timeout, in minutes */
|
||||
};
|
||||
|
||||
/**
|
||||
* Configuration for the WM831x DC-DC BuckWise convertors. This
|
||||
* should be passed as driver_data in the regulator_init_data.
|
||||
*
|
||||
* Currently all the configuration is for the fast DVS switching
|
||||
* support of the devices. This allows MFPs on the device to be
|
||||
* configured as an input to switch between two output voltages,
|
||||
* allowing voltage transitions without the expense of an access over
|
||||
* I2C or SPI buses.
|
||||
*/
|
||||
struct wm831x_buckv_pdata {
|
||||
int dvs_gpio; /** CPU GPIO to use for DVS switching */
|
||||
int dvs_control_src; /** Hardware DVS source to use (1 or 2) */
|
||||
int dvs_init_state; /** DVS state to expect on startup */
|
||||
int dvs_state_gpio; /** CPU GPIO to use for monitoring status */
|
||||
};
|
||||
|
||||
/* Sources for status LED configuration. Values are register values
|
||||
* plus 1 to allow for a zero default for preserve.
|
||||
*/
|
||||
|
@@ -35,6 +35,8 @@
|
||||
#ifndef __LINUX_REGULATOR_CONSUMER_H_
|
||||
#define __LINUX_REGULATOR_CONSUMER_H_
|
||||
|
||||
#include <linux/device.h>
|
||||
|
||||
/*
|
||||
* Regulator operating modes.
|
||||
*
|
||||
|
@@ -43,16 +43,20 @@ struct regulator;
|
||||
/**
|
||||
* struct regulator_state - regulator state during low power system states
|
||||
*
|
||||
* This describes a regulators state during a system wide low power state.
|
||||
* This describes a regulators state during a system wide low power
|
||||
* state. One of enabled or disabled must be set for the
|
||||
* configuration to be applied.
|
||||
*
|
||||
* @uV: Operating voltage during suspend.
|
||||
* @mode: Operating mode during suspend.
|
||||
* @enabled: Enabled during suspend.
|
||||
* @disabled: Disabled during suspend.
|
||||
*/
|
||||
struct regulator_state {
|
||||
int uV; /* suspend voltage */
|
||||
unsigned int mode; /* suspend regulator operating mode */
|
||||
int enabled; /* is regulator enabled in this suspend state */
|
||||
int disabled; /* is the regulator disbled in this suspend state */
|
||||
};
|
||||
|
||||
/**
|
||||
|
57
include/linux/regulator/max8660.h
Normal file
57
include/linux/regulator/max8660.h
Normal file
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
* max8660.h -- Voltage regulation for the Maxim 8660/8661
|
||||
*
|
||||
* Copyright (C) 2009 Wolfram Sang, Pengutronix e.K.
|
||||
*
|
||||
* 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; version 2 of the License.
|
||||
*
|
||||
* 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., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
|
||||
*/
|
||||
|
||||
#ifndef __LINUX_REGULATOR_MAX8660_H
|
||||
#define __LINUX_REGULATOR_MAX8660_H
|
||||
|
||||
#include <linux/regulator/machine.h>
|
||||
|
||||
enum {
|
||||
MAX8660_V3,
|
||||
MAX8660_V4,
|
||||
MAX8660_V5,
|
||||
MAX8660_V6,
|
||||
MAX8660_V7,
|
||||
MAX8660_V_END,
|
||||
};
|
||||
|
||||
/**
|
||||
* max8660_subdev_data - regulator subdev data
|
||||
* @id: regulator id
|
||||
* @name: regulator name
|
||||
* @platform_data: regulator init data
|
||||
*/
|
||||
struct max8660_subdev_data {
|
||||
int id;
|
||||
char *name;
|
||||
struct regulator_init_data *platform_data;
|
||||
};
|
||||
|
||||
/**
|
||||
* max8660_platform_data - platform data for max8660
|
||||
* @num_subdevs: number of regulators used
|
||||
* @subdevs: pointer to regulators used
|
||||
* @en34_is_high: if EN34 is driven high, regulators cannot be en-/disabled.
|
||||
*/
|
||||
struct max8660_platform_data {
|
||||
int num_subdevs;
|
||||
struct max8660_subdev_data *subdevs;
|
||||
unsigned en34_is_high:1;
|
||||
};
|
||||
#endif
|
Reference in New Issue
Block a user