/* SPDX-License-Identifier: GPL-2.0-only */ /* * Copyright 2012 Texas Instruments * * Author: Milo(Woogyom) Kim <[email protected]> */ #ifndef __LP872X_REGULATOR_H__ #define __LP872X_REGULATOR_H__ #include <linux/regulator/machine.h> #include <linux/platform_device.h> #include <linux/gpio/consumer.h> #define LP872X_MAX_REGULATORS … #define LP8720_ENABLE_DELAY … #define LP8725_ENABLE_DELAY … enum lp872x_regulator_id { … }; enum lp872x_dvs_sel { … }; /** * lp872x_dvs * @gpio : gpio descriptor for dvs control * @vsel : dvs selector for buck v1 or buck v2 register * @init_state : initial dvs pin state */ struct lp872x_dvs { … }; /** * lp872x_regdata * @id : regulator id * @init_data : init data for each regulator */ struct lp872x_regulator_data { … }; /** * lp872x_platform_data * @general_config : the value of LP872X_GENERAL_CFG register * @update_config : if LP872X_GENERAL_CFG register is updated, set true * @regulator_data : platform regulator id and init data * @dvs : dvs data for buck voltage control * @enable_gpio : gpio descriptor for enable control */ struct lp872x_platform_data { … }; #endif