2013-12-24 02:34:28 +00:00
|
|
|
/*
|
2014-07-05 13:20:54 +00:00
|
|
|
* act8865.h -- Voltage regulation for active-semi act88xx PMUs
|
2013-12-24 02:34:28 +00:00
|
|
|
*
|
|
|
|
* Copyright (C) 2013 Atmel Corporation.
|
|
|
|
*
|
|
|
|
* This program is free software; you can redistribute it and/or modify
|
|
|
|
* it under the terms of the GNU General Public License as published by
|
|
|
|
* the Free Software Foundation; version 2 of the License.
|
|
|
|
*
|
|
|
|
* This program is distributed in the hope that it will be useful,
|
|
|
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
|
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
|
|
|
* GNU General Public License for more details.
|
|
|
|
*/
|
|
|
|
|
|
|
|
#ifndef __LINUX_REGULATOR_ACT8865_H
|
|
|
|
#define __LINUX_REGULATOR_ACT8865_H
|
|
|
|
|
|
|
|
#include <linux/regulator/machine.h>
|
|
|
|
|
2015-02-27 17:04:04 +00:00
|
|
|
enum {
|
|
|
|
ACT8600_ID_DCDC1,
|
|
|
|
ACT8600_ID_DCDC2,
|
|
|
|
ACT8600_ID_DCDC3,
|
|
|
|
ACT8600_ID_SUDCDC4,
|
|
|
|
ACT8600_ID_LDO5,
|
|
|
|
ACT8600_ID_LDO6,
|
|
|
|
ACT8600_ID_LDO7,
|
|
|
|
ACT8600_ID_LDO8,
|
|
|
|
ACT8600_ID_LDO9,
|
|
|
|
ACT8600_ID_LDO10,
|
|
|
|
};
|
|
|
|
|
2013-12-24 02:34:28 +00:00
|
|
|
enum {
|
|
|
|
ACT8865_ID_DCDC1,
|
|
|
|
ACT8865_ID_DCDC2,
|
|
|
|
ACT8865_ID_DCDC3,
|
|
|
|
ACT8865_ID_LDO1,
|
|
|
|
ACT8865_ID_LDO2,
|
|
|
|
ACT8865_ID_LDO3,
|
|
|
|
ACT8865_ID_LDO4,
|
|
|
|
ACT8865_REG_NUM,
|
|
|
|
};
|
|
|
|
|
2014-07-05 13:20:55 +00:00
|
|
|
enum {
|
|
|
|
ACT8846_ID_REG1,
|
|
|
|
ACT8846_ID_REG2,
|
|
|
|
ACT8846_ID_REG3,
|
|
|
|
ACT8846_ID_REG4,
|
|
|
|
ACT8846_ID_REG5,
|
|
|
|
ACT8846_ID_REG6,
|
|
|
|
ACT8846_ID_REG7,
|
|
|
|
ACT8846_ID_REG8,
|
|
|
|
ACT8846_ID_REG9,
|
|
|
|
ACT8846_ID_REG10,
|
|
|
|
ACT8846_ID_REG11,
|
|
|
|
ACT8846_ID_REG12,
|
|
|
|
ACT8846_REG_NUM,
|
|
|
|
};
|
|
|
|
|
2014-07-05 13:20:54 +00:00
|
|
|
enum {
|
2015-02-27 17:04:04 +00:00
|
|
|
ACT8600,
|
2014-07-05 13:20:54 +00:00
|
|
|
ACT8865,
|
2014-07-05 13:20:55 +00:00
|
|
|
ACT8846,
|
2014-07-05 13:20:54 +00:00
|
|
|
};
|
|
|
|
|
2013-12-24 02:34:28 +00:00
|
|
|
/**
|
|
|
|
* act8865_regulator_data - regulator data
|
|
|
|
* @id: regulator id
|
|
|
|
* @name: regulator name
|
2016-02-28 15:53:26 +00:00
|
|
|
* @init_data: regulator init data
|
2016-03-17 14:05:07 +00:00
|
|
|
* @of_node: device tree node (optional)
|
2013-12-24 02:34:28 +00:00
|
|
|
*/
|
|
|
|
struct act8865_regulator_data {
|
|
|
|
int id;
|
|
|
|
const char *name;
|
2016-02-28 15:53:26 +00:00
|
|
|
struct regulator_init_data *init_data;
|
2016-03-17 14:05:07 +00:00
|
|
|
struct device_node *of_node;
|
2013-12-24 02:34:28 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
/**
|
|
|
|
* act8865_platform_data - platform data for act8865
|
|
|
|
* @num_regulators: number of regulators used
|
|
|
|
* @regulators: pointer to regulators used
|
|
|
|
*/
|
|
|
|
struct act8865_platform_data {
|
|
|
|
int num_regulators;
|
|
|
|
struct act8865_regulator_data *regulators;
|
|
|
|
};
|
|
|
|
#endif
|