linux/drivers/regulator/lp8788-ldo.c

// SPDX-License-Identifier: GPL-2.0-only
/*
 * TI LP8788 MFD - ldo regulator driver
 *
 * Copyright 2012 Texas Instruments
 *
 * Author: Milo(Woogyom) Kim <[email protected]>
 */

#include <linux/module.h>
#include <linux/slab.h>
#include <linux/err.h>
#include <linux/platform_device.h>
#include <linux/regulator/driver.h>
#include <linux/gpio/consumer.h>
#include <linux/mfd/lp8788.h>

/* register address */
#define LP8788_EN_LDO_A
#define LP8788_EN_LDO_B
#define LP8788_EN_LDO_C
#define LP8788_EN_SEL
#define LP8788_DLDO1_VOUT
#define LP8788_DLDO2_VOUT
#define LP8788_DLDO3_VOUT
#define LP8788_DLDO4_VOUT
#define LP8788_DLDO5_VOUT
#define LP8788_DLDO6_VOUT
#define LP8788_DLDO7_VOUT
#define LP8788_DLDO8_VOUT
#define LP8788_DLDO9_VOUT
#define LP8788_DLDO10_VOUT
#define LP8788_DLDO11_VOUT
#define LP8788_DLDO12_VOUT
#define LP8788_ALDO1_VOUT
#define LP8788_ALDO2_VOUT
#define LP8788_ALDO3_VOUT
#define LP8788_ALDO4_VOUT
#define LP8788_ALDO5_VOUT
#define LP8788_ALDO6_VOUT
#define LP8788_ALDO7_VOUT
#define LP8788_ALDO8_VOUT
#define LP8788_ALDO9_VOUT
#define LP8788_ALDO10_VOUT
#define LP8788_DLDO1_TIMESTEP

/* mask/shift bits */
#define LP8788_EN_DLDO1_M
#define LP8788_EN_DLDO2_M
#define LP8788_EN_DLDO3_M
#define LP8788_EN_DLDO4_M
#define LP8788_EN_DLDO5_M
#define LP8788_EN_DLDO6_M
#define LP8788_EN_DLDO7_M
#define LP8788_EN_DLDO8_M
#define LP8788_EN_DLDO9_M
#define LP8788_EN_DLDO10_M
#define LP8788_EN_DLDO11_M
#define LP8788_EN_DLDO12_M
#define LP8788_EN_ALDO1_M
#define LP8788_EN_ALDO2_M
#define LP8788_EN_ALDO3_M
#define LP8788_EN_ALDO4_M
#define LP8788_EN_ALDO5_M
#define LP8788_EN_ALDO6_M
#define LP8788_EN_ALDO7_M
#define LP8788_EN_ALDO8_M
#define LP8788_EN_ALDO9_M
#define LP8788_EN_ALDO10_M
#define LP8788_EN_SEL_DLDO911_M
#define LP8788_EN_SEL_DLDO7_M
#define LP8788_EN_SEL_ALDO7_M
#define LP8788_EN_SEL_ALDO5_M
#define LP8788_EN_SEL_ALDO234_M
#define LP8788_EN_SEL_ALDO1_M
#define LP8788_VOUT_5BIT_M
#define LP8788_VOUT_4BIT_M
#define LP8788_VOUT_3BIT_M
#define LP8788_VOUT_1BIT_M
#define LP8788_STARTUP_TIME_M
#define LP8788_STARTUP_TIME_S

#define ENABLE_TIME_USEC

enum lp8788_ldo_id {};

struct lp8788_ldo {};

/* DLDO 1, 2, 3, 9 voltage table */
static const int lp8788_dldo1239_vtbl[] =;

/* DLDO 4 voltage table */
static const int lp8788_dldo4_vtbl[] =;

/* DLDO 5, 7, 8 and ALDO 6 voltage table */
static const int lp8788_dldo578_aldo6_vtbl[] =;

/* DLDO 6 voltage table */
static const int lp8788_dldo6_vtbl[] =;

/* DLDO 10, 11 voltage table */
static const int lp8788_dldo1011_vtbl[] =;

/* ALDO 1 voltage table */
static const int lp8788_aldo1_vtbl[] =;

/* ALDO 7 voltage table */
static const int lp8788_aldo7_vtbl[] =;

static int lp8788_ldo_enable_time(struct regulator_dev *rdev)
{}

static const struct regulator_ops lp8788_ldo_voltage_table_ops =;

static const struct regulator_ops lp8788_ldo_voltage_fixed_ops =;

static const struct regulator_desc lp8788_dldo_desc[] =;

static const struct regulator_desc lp8788_aldo_desc[] =;

static int lp8788_config_ldo_enable_mode(struct platform_device *pdev,
					struct lp8788_ldo *ldo,
					enum lp8788_ldo_id id)
{}

static int lp8788_dldo_probe(struct platform_device *pdev)
{}

static struct platform_driver lp8788_dldo_driver =;

static int lp8788_aldo_probe(struct platform_device *pdev)
{}

static struct platform_driver lp8788_aldo_driver =;

static struct platform_driver * const drivers[] =;

static int __init lp8788_ldo_init(void)
{}
subsys_initcall(lp8788_ldo_init);

static void __exit lp8788_ldo_exit(void)
{}
module_exit(lp8788_ldo_exit);

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