blob: 15fa8f2d35c9a58fc2e563418ee00981eb1da13f [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 {
Zubair Lutfullah Kakakheldf3a9502015-02-27 17:04:04 +000022 ACT8600_ID_DCDC1,
23 ACT8600_ID_DCDC2,
24 ACT8600_ID_DCDC3,
25 ACT8600_ID_SUDCDC4,
26 ACT8600_ID_LDO5,
27 ACT8600_ID_LDO6,
28 ACT8600_ID_LDO7,
29 ACT8600_ID_LDO8,
30 ACT8600_ID_LDO9,
31 ACT8600_ID_LDO10,
32};
33
34enum {
Wenyou Yang33036f42013-12-24 10:34:28 +080035 ACT8865_ID_DCDC1,
36 ACT8865_ID_DCDC2,
37 ACT8865_ID_DCDC3,
38 ACT8865_ID_LDO1,
39 ACT8865_ID_LDO2,
40 ACT8865_ID_LDO3,
41 ACT8865_ID_LDO4,
42 ACT8865_REG_NUM,
43};
44
Beniamino Galvani50a03e32014-07-05 15:20:54 +020045enum {
Beniamino Galvaniac0c0ea2014-07-05 15:20:55 +020046 ACT8846_ID_REG1,
47 ACT8846_ID_REG2,
48 ACT8846_ID_REG3,
49 ACT8846_ID_REG4,
50 ACT8846_ID_REG5,
51 ACT8846_ID_REG6,
52 ACT8846_ID_REG7,
53 ACT8846_ID_REG8,
54 ACT8846_ID_REG9,
55 ACT8846_ID_REG10,
56 ACT8846_ID_REG11,
57 ACT8846_ID_REG12,
58 ACT8846_REG_NUM,
59};
60
61enum {
Zubair Lutfullah Kakakheldf3a9502015-02-27 17:04:04 +000062 ACT8600,
Beniamino Galvani50a03e32014-07-05 15:20:54 +020063 ACT8865,
Beniamino Galvaniac0c0ea2014-07-05 15:20:55 +020064 ACT8846,
Beniamino Galvani50a03e32014-07-05 15:20:54 +020065};
66
Wenyou Yang33036f42013-12-24 10:34:28 +080067/**
68 * act8865_regulator_data - regulator data
69 * @id: regulator id
70 * @name: regulator name
71 * @platform_data: regulator init data
72 */
73struct act8865_regulator_data {
74 int id;
75 const char *name;
76 struct regulator_init_data *platform_data;
77};
78
79/**
80 * act8865_platform_data - platform data for act8865
81 * @num_regulators: number of regulators used
82 * @regulators: pointer to regulators used
83 */
84struct act8865_platform_data {
85 int num_regulators;
86 struct act8865_regulator_data *regulators;
87};
88#endif