cregit-Linux how code gets into the kernel

Release 4.18 drivers/regulator/internal.h

/*
 * internal.h  --  Voltage/Current Regulator framework internal code
 *
 * Copyright 2007, 2008 Wolfson Microelectronics PLC.
 * Copyright 2008 SlimLogic Ltd.
 *
 * Author: Liam Girdwood <lrg@slimlogic.co.uk>
 *
 *  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.
 *
 */

#ifndef __REGULATOR_INTERNAL_H

#define __REGULATOR_INTERNAL_H

#include <linux/suspend.h>


#define REGULATOR_STATES_NUM	(PM_SUSPEND_MAX + 1)


struct regulator_voltage {
	
int min_uV;
	
int max_uV;
};

/*
 * struct regulator
 *
 * One for each consumer device.
 * @voltage - a voltage array for each state of runtime, i.e.:
 *            PM_SUSPEND_ON
 *            PM_SUSPEND_TO_IDLE
 *            PM_SUSPEND_STANDBY
 *            PM_SUSPEND_MEM
 *            PM_SUSPEND_MAX
 */

struct regulator {
	
struct device *dev;
	
struct list_head list;
	
unsigned int always_on:1;
	
unsigned int bypass:1;
	
int uA_load;
	
struct regulator_voltage voltage[REGULATOR_STATES_NUM];
	
const char *supply_name;
	
struct device_attribute dev_attr;
	
struct regulator_dev *rdev;
	
struct dentry *debugfs;
};

extern struct class regulator_class;


static inline struct regulator_dev *dev_to_rdev(struct device *dev) { return container_of(dev, struct regulator_dev, dev); }

Contributors

PersonTokensPropCommitsCommitProp
Maciej Purski25100.00%1100.00%
Total25100.00%1100.00%

#ifdef CONFIG_OF struct regulator_dev *of_find_regulator_by_node(struct device_node *np); struct regulator_init_data *regulator_of_get_init_data(struct device *dev, const struct regulator_desc *desc, struct regulator_config *config, struct device_node **node); struct regulator_dev *of_parse_coupled_regulator(struct regulator_dev *rdev, int index); int of_get_n_coupled(struct regulator_dev *rdev); bool of_check_coupling_data(struct regulator_dev *rdev); #else
static inline struct regulator_dev * of_find_regulator_by_node(struct device_node *np) { return NULL; }

Contributors

PersonTokensPropCommitsCommitProp
Changbin Du1482.35%150.00%
Mark Brown317.65%150.00%
Total17100.00%2100.00%


static inline struct regulator_init_data * regulator_of_get_init_data(struct device *dev, const struct regulator_desc *desc, struct regulator_config *config, struct device_node **node) { return NULL; }

Contributors

PersonTokensPropCommitsCommitProp
Mark Brown2676.47%133.33%
Krzysztof Kozlowski514.71%133.33%
Changbin Du38.82%133.33%
Total34100.00%3100.00%


static inline struct regulator_dev * of_parse_coupled_regulator(struct regulator_dev *rdev, int index) { return NULL; }

Contributors

PersonTokensPropCommitsCommitProp
Maciej Purski20100.00%1100.00%
Total20100.00%1100.00%


static inline int of_get_n_coupled(struct regulator_dev *rdev) { return 0; }

Contributors

PersonTokensPropCommitsCommitProp
Maciej Purski15100.00%1100.00%
Total15100.00%1100.00%


static inline bool of_check_coupling_data(struct regulator_dev *rdev) { return false; }

Contributors

PersonTokensPropCommitsCommitProp
Maciej Purski15100.00%1100.00%
Total15100.00%1100.00%

#endif enum regulator_get_type { NORMAL_GET, EXCLUSIVE_GET, OPTIONAL_GET, MAX_GET_TYPE }; struct regulator *_regulator_get(struct device *dev, const char *id, enum regulator_get_type get_type); #endif

Overall Contributors

PersonTokensPropCommitsCommitProp
Maciej Purski12337.96%220.00%
Mark Brown11334.88%330.00%
Dmitry Torokhov329.88%110.00%
Chunyan Zhang257.72%110.00%
Changbin Du206.17%110.00%
Krzysztof Kozlowski103.09%110.00%
Stephen Boyd10.31%110.00%
Total324100.00%10100.00%
Information contained on this website is for historical information purposes only and does not indicate or represent copyright ownership.
Created with cregit.