linux/drivers/regulator/s5m8767.c

// SPDX-License-Identifier: GPL-2.0+
//
// Copyright (c) 2011 Samsung Electronics Co., Ltd
//              http://www.samsung.com

#include <linux/err.h>
#include <linux/of_gpio.h>
#include <linux/gpio/consumer.h>
#include <linux/module.h>
#include <linux/platform_device.h>
#include <linux/regulator/driver.h>
#include <linux/regulator/machine.h>
#include <linux/mfd/samsung/core.h>
#include <linux/mfd/samsung/s5m8767.h>
#include <linux/regulator/of_regulator.h>
#include <linux/regmap.h>

#define S5M8767_OPMODE_NORMAL_MODE

struct s5m8767_info {};

struct sec_voltage_desc {};

static const struct sec_voltage_desc buck_voltage_val1 =;

static const struct sec_voltage_desc buck_voltage_val2 =;

static const struct sec_voltage_desc buck_voltage_val3 =;

static const struct sec_voltage_desc ldo_voltage_val1 =;

static const struct sec_voltage_desc ldo_voltage_val2 =;

static const struct sec_voltage_desc *reg_voltage_map[] =;

static const unsigned int s5m8767_opmode_reg[][4] =;

static int s5m8767_get_register(struct s5m8767_info *s5m8767, int reg_id,
				int *reg, int *enable_ctrl)
{}

static int s5m8767_get_vsel_reg(int reg_id, struct s5m8767_info *s5m8767)
{}

static int s5m8767_convert_voltage_to_sel(const struct sec_voltage_desc *desc,
					  int min_vol)
{}

static inline int s5m8767_set_high(struct s5m8767_info *s5m8767)
{}

static inline int s5m8767_set_low(struct s5m8767_info *s5m8767)
{}

static int s5m8767_set_voltage_sel(struct regulator_dev *rdev,
				   unsigned selector)
{}

static int s5m8767_set_voltage_time_sel(struct regulator_dev *rdev,
					     unsigned int old_sel,
					     unsigned int new_sel)
{}

static const struct regulator_ops s5m8767_ops =;

static const struct regulator_ops s5m8767_buck78_ops =;

#define s5m8767_regulator_desc(_name)

#define s5m8767_regulator_buck78_desc(_name)

static struct regulator_desc regulators[] =;

/*
 * Enable GPIO control over BUCK9 in regulator_config for that regulator.
 */
static void s5m8767_regulator_config_ext_control(struct s5m8767_info *s5m8767,
		struct sec_regulator_data *rdata,
		struct regulator_config *config)
{}

/*
 * Turn on GPIO control over BUCK9.
 */
static int s5m8767_enable_ext_control(struct s5m8767_info *s5m8767,
		struct regulator_dev *rdev)
{}


#ifdef CONFIG_OF
static int s5m8767_pmic_dt_parse_dvs_gpio(struct sec_pmic_dev *iodev,
			struct sec_platform_data *pdata,
			struct device_node *pmic_np)
{}

static int s5m8767_pmic_dt_parse_ds_gpio(struct sec_pmic_dev *iodev,
			struct sec_platform_data *pdata,
			struct device_node *pmic_np)
{}

static int s5m8767_pmic_dt_parse_pdata(struct platform_device *pdev,
					struct sec_platform_data *pdata)
{}
#else
static int s5m8767_pmic_dt_parse_pdata(struct platform_device *pdev,
					struct sec_platform_data *pdata)
{
	return 0;
}
#endif /* CONFIG_OF */

static int s5m8767_pmic_probe(struct platform_device *pdev)
{}

static const struct platform_device_id s5m8767_pmic_id[] =;
MODULE_DEVICE_TABLE(platform, s5m8767_pmic_id);

static struct platform_driver s5m8767_pmic_driver =;
module_platform_driver();

/* Module information */
MODULE_AUTHOR();
MODULE_DESCRIPTION();
MODULE_LICENSE();