Back to home page

OSCL-LXR

 
 

    


0001 /* SPDX-License-Identifier: GPL-2.0-only */
0002 /*
0003  * max8660.h  --  Voltage regulation for the Maxim 8660/8661
0004  *
0005  * Copyright (C) 2009 Wolfram Sang, Pengutronix e.K.
0006  */
0007 
0008 #ifndef __LINUX_REGULATOR_MAX8660_H
0009 #define __LINUX_REGULATOR_MAX8660_H
0010 
0011 #include <linux/regulator/machine.h>
0012 
0013 enum {
0014     MAX8660_V3,
0015     MAX8660_V4,
0016     MAX8660_V5,
0017     MAX8660_V6,
0018     MAX8660_V7,
0019     MAX8660_V_END,
0020 };
0021 
0022 /**
0023  * max8660_subdev_data - regulator subdev data
0024  * @id: regulator id
0025  * @name: regulator name
0026  * @platform_data: regulator init data
0027  */
0028 struct max8660_subdev_data {
0029     int             id;
0030     const char          *name;
0031     struct regulator_init_data  *platform_data;
0032 };
0033 
0034 /**
0035  * max8660_platform_data - platform data for max8660
0036  * @num_subdevs: number of regulators used
0037  * @subdevs: pointer to regulators used
0038  * @en34_is_high: if EN34 is driven high, regulators cannot be en-/disabled.
0039  */
0040 struct max8660_platform_data {
0041     int num_subdevs;
0042     struct max8660_subdev_data *subdevs;
0043     unsigned en34_is_high:1;
0044 };
0045 #endif