blob: b6c4909b33af8247d685f0a6932dfc73fc352ec5 [file] [log] [blame]
Wenyou Yang33036f42013-12-24 10:34:28 +08001/*
Beniamino Galvani50a03e32014-07-05 15:20:54 +02002 * act8865.h -- Voltage regulation for active-semi act88xx PMUs
Wenyou Yang33036f42013-12-24 10:34:28 +08003 *
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
21enum {
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
Beniamino Galvani50a03e32014-07-05 15:20:54 +020032enum {
Beniamino Galvaniac0c0ea2014-07-05 15:20:55 +020033 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
48enum {
Beniamino Galvani50a03e32014-07-05 15:20:54 +020049 ACT8865,
Beniamino Galvaniac0c0ea2014-07-05 15:20:55 +020050 ACT8846,
Beniamino Galvani50a03e32014-07-05 15:20:54 +020051};
52
Wenyou Yang33036f42013-12-24 10:34:28 +080053/**
54 * act8865_regulator_data - regulator data
55 * @id: regulator id
56 * @name: regulator name
57 * @platform_data: regulator init data
58 */
59struct 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 */
70struct act8865_platform_data {
71 int num_regulators;
72 struct act8865_regulator_data *regulators;
73};
74#endif