1 /* 2 * act8865.h -- Voltage regulation for active-semi act88xx PMUs 3 * 4 * Copyright (C) 2013 Atmel Corporation. 5 * 6 * This program is free software; you can redistribute it and/or modify 7 * it under the terms of the GNU General Public License as published by 8 * the Free Software Foundation; version 2 of the License. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 */ 15 16 #ifndef __LINUX_REGULATOR_ACT8865_H 17 #define __LINUX_REGULATOR_ACT8865_H 18 19 #include <linux/regulator/machine.h> 20 21 enum { 22 ACT8865_ID_DCDC1, 23 ACT8865_ID_DCDC2, 24 ACT8865_ID_DCDC3, 25 ACT8865_ID_LDO1, 26 ACT8865_ID_LDO2, 27 ACT8865_ID_LDO3, 28 ACT8865_ID_LDO4, 29 ACT8865_REG_NUM, 30 }; 31 32 enum { 33 ACT8846_ID_REG1, 34 ACT8846_ID_REG2, 35 ACT8846_ID_REG3, 36 ACT8846_ID_REG4, 37 ACT8846_ID_REG5, 38 ACT8846_ID_REG6, 39 ACT8846_ID_REG7, 40 ACT8846_ID_REG8, 41 ACT8846_ID_REG9, 42 ACT8846_ID_REG10, 43 ACT8846_ID_REG11, 44 ACT8846_ID_REG12, 45 ACT8846_REG_NUM, 46 }; 47 48 enum { 49 ACT8865, 50 ACT8846, 51 }; 52 53 /** 54 * act8865_regulator_data - regulator data 55 * @id: regulator id 56 * @name: regulator name 57 * @platform_data: regulator init data 58 */ 59 struct act8865_regulator_data { 60 int id; 61 const char *name; 62 struct regulator_init_data *platform_data; 63 }; 64 65 /** 66 * act8865_platform_data - platform data for act8865 67 * @num_regulators: number of regulators used 68 * @regulators: pointer to regulators used 69 */ 70 struct act8865_platform_data { 71 int num_regulators; 72 struct act8865_regulator_data *regulators; 73 }; 74 #endif 75