1 /* 2 * LP8755 High Performance Power Management Unit Driver:System Interface Driver 3 * 4 * Copyright (C) 2012 Texas Instruments 5 * 6 * Author: Daniel(Geon Si) Jeong <daniel.jeong@ti.com> 7 * G.Shark Jeong <gshark.jeong@gmail.com> 8 * 9 * This program is free software; you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License version 2 as 11 * published by the Free Software Foundation. 12 * 13 */ 14 15 #ifndef _LP8755_H 16 #define _LP8755_H 17 18 #include <linux/regulator/consumer.h> 19 20 #define LP8755_NAME "lp8755-regulator" 21 /* 22 *PWR FAULT : power fault detected 23 *OCP : over current protect activated 24 *OVP : over voltage protect activated 25 *TEMP_WARN : thermal warning 26 *TEMP_SHDN : thermal shutdonw detected 27 *I_LOAD : current measured 28 */ 29 #define LP8755_EVENT_PWR_FAULT REGULATOR_EVENT_FAIL 30 #define LP8755_EVENT_OCP REGULATOR_EVENT_OVER_CURRENT 31 #define LP8755_EVENT_OVP 0x10000 32 #define LP8755_EVENT_TEMP_WARN 0x2000 33 #define LP8755_EVENT_TEMP_SHDN REGULATOR_EVENT_OVER_TEMP 34 #define LP8755_EVENT_I_LOAD 0x40000 35 36 enum lp8755_bucks { 37 LP8755_BUCK0 = 0, 38 LP8755_BUCK1, 39 LP8755_BUCK2, 40 LP8755_BUCK3, 41 LP8755_BUCK4, 42 LP8755_BUCK5, 43 LP8755_BUCK_MAX, 44 }; 45 46 /** 47 * multiphase configuration options 48 */ 49 enum lp8755_mphase_config { 50 MPHASE_CONF0, 51 MPHASE_CONF1, 52 MPHASE_CONF2, 53 MPHASE_CONF3, 54 MPHASE_CONF4, 55 MPHASE_CONF5, 56 MPHASE_CONF6, 57 MPHASE_CONF7, 58 MPHASE_CONF8, 59 MPHASE_CONF_MAX 60 }; 61 62 /** 63 * struct lp8755_platform_data 64 * @mphase_type : Multiphase Switcher Configurations. 65 * @buck_data : buck0~6 init voltage in uV 66 */ 67 struct lp8755_platform_data { 68 int mphase; 69 struct regulator_init_data *buck_data[LP8755_BUCK_MAX]; 70 }; 71 #endif 72