2019-05-27 14:55:01 +08:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0-or-later */
|
2012-10-16 04:44:45 +08:00
|
|
|
/* Copyright (C) 2012 Dialog Semiconductor Ltd.
|
2012-09-14 21:24:50 +08:00
|
|
|
*/
|
|
|
|
#ifndef __DA9055_PDATA_H
|
|
|
|
#define __DA9055_PDATA_H
|
|
|
|
|
|
|
|
#define DA9055_MAX_REGULATORS 8
|
|
|
|
|
|
|
|
struct da9055;
|
2018-02-12 21:17:00 +08:00
|
|
|
struct gpio_desc;
|
2012-09-14 21:24:50 +08:00
|
|
|
|
|
|
|
enum gpio_select {
|
|
|
|
NO_GPIO = 0,
|
|
|
|
GPIO_1,
|
|
|
|
GPIO_2
|
|
|
|
};
|
|
|
|
|
|
|
|
struct da9055_pdata {
|
|
|
|
int (*init) (struct da9055 *da9055);
|
|
|
|
int irq_base;
|
|
|
|
int gpio_base;
|
|
|
|
|
|
|
|
struct regulator_init_data *regulators[DA9055_MAX_REGULATORS];
|
2012-11-01 16:27:56 +08:00
|
|
|
/* Enable RTC in RESET Mode */
|
|
|
|
bool reset_enable;
|
|
|
|
/*
|
|
|
|
* GPI muxed pin to control
|
|
|
|
* regulator state A/B, 0 if not available.
|
|
|
|
*/
|
|
|
|
int *gpio_ren;
|
|
|
|
/*
|
|
|
|
* GPI muxed pin to control
|
|
|
|
* regulator set, 0 if not available.
|
|
|
|
*/
|
|
|
|
int *gpio_rsel;
|
|
|
|
/*
|
|
|
|
* Regulator mode control bits value (GPI offset) that
|
|
|
|
* that controls the regulator state, 0 if not available.
|
|
|
|
*/
|
|
|
|
enum gpio_select *reg_ren;
|
|
|
|
/*
|
|
|
|
* Regulator mode control bits value (GPI offset) that
|
|
|
|
* controls the regulator set A/B, 0 if not available.
|
|
|
|
*/
|
|
|
|
enum gpio_select *reg_rsel;
|
2018-02-12 21:17:00 +08:00
|
|
|
/* GPIO descriptors to enable regulator, NULL if not available */
|
|
|
|
struct gpio_desc **ena_gpiods;
|
2012-09-14 21:24:50 +08:00
|
|
|
};
|
|
|
|
#endif /* __DA9055_PDATA_H */
|