mirror of https://github.com/Qortal/Brooklyn
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
118 lines
2.2 KiB
118 lines
2.2 KiB
/* SPDX-License-Identifier: GPL-2.0-or-later */ |
|
/* |
|
* max8952.h - Voltage regulation for the Maxim 8952 |
|
* |
|
* Copyright (C) 2010 Samsung Electrnoics |
|
* MyungJoo Ham <[email protected]> |
|
*/ |
|
|
|
#ifndef REGULATOR_MAX8952 |
|
#define REGULATOR_MAX8952 |
|
|
|
#include <linux/regulator/machine.h> |
|
|
|
enum { |
|
MAX8952_DVS_MODE0, |
|
MAX8952_DVS_MODE1, |
|
MAX8952_DVS_MODE2, |
|
MAX8952_DVS_MODE3, |
|
}; |
|
|
|
enum { |
|
MAX8952_DVS_770mV = 0, |
|
MAX8952_DVS_780mV, |
|
MAX8952_DVS_790mV, |
|
MAX8952_DVS_800mV, |
|
MAX8952_DVS_810mV, |
|
MAX8952_DVS_820mV, |
|
MAX8952_DVS_830mV, |
|
MAX8952_DVS_840mV, |
|
MAX8952_DVS_850mV, |
|
MAX8952_DVS_860mV, |
|
MAX8952_DVS_870mV, |
|
MAX8952_DVS_880mV, |
|
MAX8952_DVS_890mV, |
|
MAX8952_DVS_900mV, |
|
MAX8952_DVS_910mV, |
|
MAX8952_DVS_920mV, |
|
MAX8952_DVS_930mV, |
|
MAX8952_DVS_940mV, |
|
MAX8952_DVS_950mV, |
|
MAX8952_DVS_960mV, |
|
MAX8952_DVS_970mV, |
|
MAX8952_DVS_980mV, |
|
MAX8952_DVS_990mV, |
|
MAX8952_DVS_1000mV, |
|
MAX8952_DVS_1010mV, |
|
MAX8952_DVS_1020mV, |
|
MAX8952_DVS_1030mV, |
|
MAX8952_DVS_1040mV, |
|
MAX8952_DVS_1050mV, |
|
MAX8952_DVS_1060mV, |
|
MAX8952_DVS_1070mV, |
|
MAX8952_DVS_1080mV, |
|
MAX8952_DVS_1090mV, |
|
MAX8952_DVS_1100mV, |
|
MAX8952_DVS_1110mV, |
|
MAX8952_DVS_1120mV, |
|
MAX8952_DVS_1130mV, |
|
MAX8952_DVS_1140mV, |
|
MAX8952_DVS_1150mV, |
|
MAX8952_DVS_1160mV, |
|
MAX8952_DVS_1170mV, |
|
MAX8952_DVS_1180mV, |
|
MAX8952_DVS_1190mV, |
|
MAX8952_DVS_1200mV, |
|
MAX8952_DVS_1210mV, |
|
MAX8952_DVS_1220mV, |
|
MAX8952_DVS_1230mV, |
|
MAX8952_DVS_1240mV, |
|
MAX8952_DVS_1250mV, |
|
MAX8952_DVS_1260mV, |
|
MAX8952_DVS_1270mV, |
|
MAX8952_DVS_1280mV, |
|
MAX8952_DVS_1290mV, |
|
MAX8952_DVS_1300mV, |
|
MAX8952_DVS_1310mV, |
|
MAX8952_DVS_1320mV, |
|
MAX8952_DVS_1330mV, |
|
MAX8952_DVS_1340mV, |
|
MAX8952_DVS_1350mV, |
|
MAX8952_DVS_1360mV, |
|
MAX8952_DVS_1370mV, |
|
MAX8952_DVS_1380mV, |
|
MAX8952_DVS_1390mV, |
|
MAX8952_DVS_1400mV, |
|
}; |
|
|
|
enum { |
|
MAX8952_SYNC_FREQ_26MHZ, /* Default */ |
|
MAX8952_SYNC_FREQ_13MHZ, |
|
MAX8952_SYNC_FREQ_19_2MHZ, |
|
}; |
|
|
|
enum { |
|
MAX8952_RAMP_32mV_us = 0, /* Default */ |
|
MAX8952_RAMP_16mV_us, |
|
MAX8952_RAMP_8mV_us, |
|
MAX8952_RAMP_4mV_us, |
|
MAX8952_RAMP_2mV_us, |
|
MAX8952_RAMP_1mV_us, |
|
MAX8952_RAMP_0_5mV_us, |
|
MAX8952_RAMP_0_25mV_us, |
|
}; |
|
|
|
#define MAX8952_NUM_DVS_MODE 4 |
|
|
|
struct max8952_platform_data { |
|
u32 default_mode; |
|
u32 dvs_mode[MAX8952_NUM_DVS_MODE]; /* MAX8952_DVS_MODEx_XXXXmV */ |
|
|
|
u32 sync_freq; |
|
u32 ramp_speed; |
|
|
|
struct regulator_init_data *reg_data; |
|
}; |
|
|
|
|
|
#endif /* REGULATOR_MAX8952 */
|
|
|