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

source code of linux/include/linux/platform_data/lp8755.h