diff options
Diffstat (limited to 'include/linux')
| -rw-r--r-- | include/linux/clk-provider.h | 4 | ||||
| -rw-r--r-- | include/linux/mfd/tps65090.h | 35 | ||||
| -rw-r--r-- | include/linux/mm.h | 4 | ||||
| -rw-r--r-- | include/linux/mmzone.h | 2 | ||||
| -rw-r--r-- | include/linux/platform_data/omap_ocp2scp.h | 31 | ||||
| -rw-r--r-- | include/linux/regulator/driver.h | 3 | ||||
| -rw-r--r-- | include/linux/regulator/tps51632-regulator.h | 47 | ||||
| -rw-r--r-- | include/linux/regulator/tps65090-regulator.h | 50 | ||||
| -rw-r--r-- | include/linux/rio.h | 2 | 
9 files changed, 121 insertions, 57 deletions
diff --git a/include/linux/clk-provider.h b/include/linux/clk-provider.h index c1273158292..f9f5e9eeb9d 100644 --- a/include/linux/clk-provider.h +++ b/include/linux/clk-provider.h @@ -335,8 +335,8 @@ const char *__clk_get_name(struct clk *clk);  struct clk_hw *__clk_get_hw(struct clk *clk);  u8 __clk_get_num_parents(struct clk *clk);  struct clk *__clk_get_parent(struct clk *clk); -inline int __clk_get_enable_count(struct clk *clk); -inline int __clk_get_prepare_count(struct clk *clk); +int __clk_get_enable_count(struct clk *clk); +int __clk_get_prepare_count(struct clk *clk);  unsigned long __clk_get_rate(struct clk *clk);  unsigned long __clk_get_flags(struct clk *clk);  int __clk_is_enabled(struct clk *clk); diff --git a/include/linux/mfd/tps65090.h b/include/linux/mfd/tps65090.h index 6bc31d85462..804e280c1e1 100644 --- a/include/linux/mfd/tps65090.h +++ b/include/linux/mfd/tps65090.h @@ -24,6 +24,25 @@  #include <linux/irq.h> +/* TPS65090 Regulator ID */ +enum { +	TPS65090_REGULATOR_DCDC1, +	TPS65090_REGULATOR_DCDC2, +	TPS65090_REGULATOR_DCDC3, +	TPS65090_REGULATOR_FET1, +	TPS65090_REGULATOR_FET2, +	TPS65090_REGULATOR_FET3, +	TPS65090_REGULATOR_FET4, +	TPS65090_REGULATOR_FET5, +	TPS65090_REGULATOR_FET6, +	TPS65090_REGULATOR_FET7, +	TPS65090_REGULATOR_LDO1, +	TPS65090_REGULATOR_LDO2, + +	/* Last entry for maximum ID */ +	TPS65090_REGULATOR_MAX, +}; +  struct tps65090 {  	struct mutex		lock;  	struct device		*dev; @@ -41,10 +60,26 @@ struct tps65090_subdev_info {  	void		*platform_data;  }; +/* + * struct tps65090_regulator_plat_data + * + * @reg_init_data: The regulator init data. + * @enable_ext_control: Enable extrenal control or not. Only available for + *     DCDC1, DCDC2 and DCDC3. + * @gpio: Gpio number if external control is enabled and controlled through + *     gpio. + */ +struct tps65090_regulator_plat_data { +	struct regulator_init_data *reg_init_data; +	bool enable_ext_control; +	int gpio; +}; +  struct tps65090_platform_data {  	int irq_base;  	int num_subdevs;  	struct tps65090_subdev_info *subdevs; +	struct tps65090_regulator_plat_data *reg_pdata[TPS65090_REGULATOR_MAX];  };  /* diff --git a/include/linux/mm.h b/include/linux/mm.h index fa068040273..bcaab4e6fe9 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1684,9 +1684,5 @@ static inline unsigned int debug_guardpage_minorder(void) { return 0; }  static inline bool page_is_guard(struct page *page) { return false; }  #endif /* CONFIG_DEBUG_PAGEALLOC */ -extern void reset_zone_present_pages(void); -extern void fixup_zone_present_pages(int nid, unsigned long start_pfn, -				unsigned long end_pfn); -  #endif /* __KERNEL__ */  #endif /* _LINUX_MM_H */ diff --git a/include/linux/mmzone.h b/include/linux/mmzone.h index 50aaca81f63..a23923ba826 100644 --- a/include/linux/mmzone.h +++ b/include/linux/mmzone.h @@ -752,7 +752,7 @@ extern int init_currently_empty_zone(struct zone *zone, unsigned long start_pfn,  				     unsigned long size,  				     enum memmap_context context); -extern void lruvec_init(struct lruvec *lruvec, struct zone *zone); +extern void lruvec_init(struct lruvec *lruvec);  static inline struct zone *lruvec_zone(struct lruvec *lruvec)  { diff --git a/include/linux/platform_data/omap_ocp2scp.h b/include/linux/platform_data/omap_ocp2scp.h new file mode 100644 index 00000000000..5c6c3939355 --- /dev/null +++ b/include/linux/platform_data/omap_ocp2scp.h @@ -0,0 +1,31 @@ +/* + * omap_ocp2scp.h -- ocp2scp header file + * + * Copyright (C) 2012 Texas Instruments Incorporated - http://www.ti.com + * 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. + * + * Author: Kishon Vijay Abraham I <kishon@ti.com> + * + * 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. + * + */ + +#ifndef __DRIVERS_OMAP_OCP2SCP_H +#define __DRIVERS_OMAP_OCP2SCP_H + +struct omap_ocp2scp_dev { +	const char			*drv_name; +	struct resource			*res; +}; + +struct omap_ocp2scp_platform_data { +	int				dev_cnt; +	struct omap_ocp2scp_dev		**devices; +}; +#endif /* __DRIVERS_OMAP_OCP2SCP_H */ diff --git a/include/linux/regulator/driver.h b/include/linux/regulator/driver.h index 7932a3bf21b..f2b72b230b9 100644 --- a/include/linux/regulator/driver.h +++ b/include/linux/regulator/driver.h @@ -181,6 +181,8 @@ enum regulator_type {   * @type: Indicates if the regulator is a voltage or current regulator.   * @owner: Module providing the regulator, used for refcounting.   * + * @continuous_voltage_range: Indicates if the regulator can set any + *                            voltage within constrains range.   * @n_voltages: Number of selectors available for ops.list_voltage().   *   * @min_uV: Voltage given by the lowest selector (if linear mapping) @@ -199,6 +201,7 @@ struct regulator_desc {  	const char *name;  	const char *supply_name;  	int id; +	bool continuous_voltage_range;  	unsigned n_voltages;  	struct regulator_ops *ops;  	int irq; diff --git a/include/linux/regulator/tps51632-regulator.h b/include/linux/regulator/tps51632-regulator.h new file mode 100644 index 00000000000..d00841e1a75 --- /dev/null +++ b/include/linux/regulator/tps51632-regulator.h @@ -0,0 +1,47 @@ +/* + * tps51632-regulator.h -- TPS51632 regulator + * + * Interface for regulator driver for TPS51632 3-2-1 Phase D-Cap Step Down + * Driverless Controller with serial VID control and DVFS. + * + * Copyright (C) 2012 NVIDIA Corporation + + * Author: Laxman Dewangan <ldewangan@nvidia.com> + * + * 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. + * + */ + +#ifndef __LINUX_REGULATOR_TPS51632_H +#define __LINUX_REGULATOR_TPS51632_H + +/* + * struct tps51632_regulator_platform_data - tps51632 regulator platform data. + * + * @reg_init_data: The regulator init data. + * @enable_pwm_dvfs: Enable PWM DVFS or not. + * @dvfs_step_20mV: Step for DVFS is 20mV or 10mV. + * @max_voltage_uV: Maximum possible voltage in PWM-DVFS mode. + * @base_voltage_uV: Base voltage when PWM-DVFS enabled. + */ +struct tps51632_regulator_platform_data { +	struct regulator_init_data *reg_init_data; +	bool enable_pwm_dvfs; +	bool dvfs_step_20mV; +	int max_voltage_uV; +	int base_voltage_uV; +}; + +#endif /* __LINUX_REGULATOR_TPS51632_H */ diff --git a/include/linux/regulator/tps65090-regulator.h b/include/linux/regulator/tps65090-regulator.h deleted file mode 100644 index 0fa04b64db3..00000000000 --- a/include/linux/regulator/tps65090-regulator.h +++ /dev/null @@ -1,50 +0,0 @@ -/* - * Regulator driver interface for TI TPS65090 PMIC family - * - * Copyright (c) 2012, NVIDIA CORPORATION.  All rights reserved. - - * This program is free software; you can redistribute it and/or modify it - * under the terms and conditions of the GNU General Public License, - * version 2, as published by the Free Software Foundation. - - * This program is distributed in the hope 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, see <http://www.gnu.org/licenses/>. - */ - -#ifndef __REGULATOR_TPS65090_H -#define __REGULATOR_TPS65090_H - -#include <linux/regulator/machine.h> - -#define tps65090_rails(_name) "tps65090_"#_name - -enum { -	TPS65090_ID_DCDC1, -	TPS65090_ID_DCDC2, -	TPS65090_ID_DCDC3, -	TPS65090_ID_FET1, -	TPS65090_ID_FET2, -	TPS65090_ID_FET3, -	TPS65090_ID_FET4, -	TPS65090_ID_FET5, -	TPS65090_ID_FET6, -	TPS65090_ID_FET7, -}; - -/* - * struct tps65090_regulator_platform_data - * - * @regulator: The regulator init data. - * @slew_rate_uV_per_us: Slew rate microvolt per microsec. - */ - -struct tps65090_regulator_platform_data { -	struct regulator_init_data regulator; -}; - -#endif	/* __REGULATOR_TPS65090_H */ diff --git a/include/linux/rio.h b/include/linux/rio.h index 4187da51100..a3e78427866 100644 --- a/include/linux/rio.h +++ b/include/linux/rio.h @@ -275,9 +275,11 @@ struct rio_id_table {   * struct rio_net - RIO network info   * @node: Node in global list of RIO networks   * @devices: List of devices in this network + * @switches: List of switches in this netowrk   * @mports: List of master ports accessing this network   * @hport: Default port for accessing this network   * @id: RIO network ID + * @destid_table: destID allocation table   */  struct rio_net {  	struct list_head node;	/* node in list of networks */  |