linux/drivers/regulator/act8945a-regulator.c

// SPDX-License-Identifier: GPL-2.0-or-later
/*
 * Voltage regulation driver for active-semi ACT8945A PMIC
 *
 * Copyright (C) 2015 Atmel Corporation
 *
 * Author: Wenyou Yang <[email protected]>
 */

#include <linux/module.h>
#include <linux/of.h>
#include <linux/platform_device.h>
#include <linux/regmap.h>
#include <linux/regulator/driver.h>
#include <linux/regulator/machine.h>
#include <dt-bindings/regulator/active-semi,8945a-regulator.h>

/*
 * ACT8945A Global Register Map.
 */
#define ACT8945A_SYS_MODE
#define ACT8945A_SYS_CTRL
#define ACT8945A_SYS_UNLK_REGS
#define ACT8945A_DCDC1_VSET1
#define ACT8945A_DCDC1_VSET2
#define ACT8945A_DCDC1_CTRL
#define ACT8945A_DCDC1_SUS
#define ACT8945A_DCDC2_VSET1
#define ACT8945A_DCDC2_VSET2
#define ACT8945A_DCDC2_CTRL
#define ACT8945A_DCDC2_SUS
#define ACT8945A_DCDC3_VSET1
#define ACT8945A_DCDC3_VSET2
#define ACT8945A_DCDC3_CTRL
#define ACT8945A_DCDC3_SUS
#define ACT8945A_LDO1_VSET
#define ACT8945A_LDO1_CTRL
#define ACT8945A_LDO1_SUS
#define ACT8945A_LDO2_VSET
#define ACT8945A_LDO2_CTRL
#define ACT8945A_LDO2_SUS
#define ACT8945A_LDO3_VSET
#define ACT8945A_LDO3_CTRL
#define ACT8945A_LDO3_SUS
#define ACT8945A_LDO4_VSET
#define ACT8945A_LDO4_CTRL
#define ACT8945A_LDO4_SUS

/*
 * Field Definitions.
 */
#define ACT8945A_ENA
#define ACT8945A_VSEL_MASK

/*
 * ACT8945A Voltage Number
 */
#define ACT8945A_VOLTAGE_NUM

enum {};

struct act8945a_pmic {};

static const struct linear_range act8945a_voltage_ranges[] =;

static int act8945a_set_suspend_state(struct regulator_dev *rdev, bool enable)
{}

static int act8945a_set_suspend_enable(struct regulator_dev *rdev)
{}

static int act8945a_set_suspend_disable(struct regulator_dev *rdev)
{}

static unsigned int act8945a_of_map_mode(unsigned int mode)
{}

static int act8945a_set_mode(struct regulator_dev *rdev, unsigned int mode)
{}

static unsigned int act8945a_get_mode(struct regulator_dev *rdev)
{}

static const struct regulator_ops act8945a_ops =;

#define ACT89xx_REG(_name, _family, _id, _vsel_reg, _supply)

static const struct regulator_desc act8945a_regulators[] =;

static const struct regulator_desc act8945a_alt_regulators[] =;

static int act8945a_pmic_probe(struct platform_device *pdev)
{}

static int __maybe_unused act8945a_suspend(struct device *pdev)
{}

static SIMPLE_DEV_PM_OPS(act8945a_pm, act8945a_suspend, NULL);

static void act8945a_pmic_shutdown(struct platform_device *pdev)
{}

static struct platform_driver act8945a_pmic_driver =;
module_platform_driver();

MODULE_DESCRIPTION();
MODULE_AUTHOR();
MODULE_LICENSE();