Tom Rini | 10e4779 | 2018-05-06 17:58:06 -0400 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
Hans de Goede | d9ee84b | 2015-10-03 15:18:33 +0200 | [diff] [blame] | 2 | /* |
| 3 | * (C) Copyright 2015 Hans de Goede <hdegoede@redhat.com> |
| 4 | * |
| 5 | * X-Powers AX Power Management IC support header |
Hans de Goede | d9ee84b | 2015-10-03 15:18:33 +0200 | [diff] [blame] | 6 | */ |
| 7 | #ifndef _AXP_PMIC_H_ |
| 8 | |
Samuel Holland | 60d4928 | 2021-10-08 00:17:20 -0500 | [diff] [blame^] | 9 | #include <stdbool.h> |
| 10 | |
Hans de Goede | d9ee84b | 2015-10-03 15:18:33 +0200 | [diff] [blame] | 11 | #ifdef CONFIG_AXP152_POWER |
| 12 | #include <axp152.h> |
| 13 | #endif |
| 14 | #ifdef CONFIG_AXP209_POWER |
| 15 | #include <axp209.h> |
| 16 | #endif |
| 17 | #ifdef CONFIG_AXP221_POWER |
| 18 | #include <axp221.h> |
| 19 | #endif |
Jernej Skrabec | fde828c | 2021-01-11 21:11:33 +0100 | [diff] [blame] | 20 | #ifdef CONFIG_AXP305_POWER |
| 21 | #include <axp305.h> |
| 22 | #endif |
Chen-Yu Tsai | f1e66e7 | 2016-05-02 10:28:15 +0800 | [diff] [blame] | 23 | #ifdef CONFIG_AXP809_POWER |
| 24 | #include <axp809.h> |
| 25 | #endif |
vishnupatekar | 91bce9c | 2015-11-29 01:07:21 +0800 | [diff] [blame] | 26 | #ifdef CONFIG_AXP818_POWER |
| 27 | #include <axp818.h> |
| 28 | #endif |
Hans de Goede | d9ee84b | 2015-10-03 15:18:33 +0200 | [diff] [blame] | 29 | |
Samuel Holland | 60d4928 | 2021-10-08 00:17:20 -0500 | [diff] [blame^] | 30 | #define AXP_PMIC_MODE_REG 0x3e |
| 31 | #define AXP_PMIC_MODE_I2C 0x00 |
| 32 | #define AXP_PMIC_MODE_P2WI 0x3e |
| 33 | |
Hans de Goede | d9ee84b | 2015-10-03 15:18:33 +0200 | [diff] [blame] | 34 | int axp_set_dcdc1(unsigned int mvolt); |
| 35 | int axp_set_dcdc2(unsigned int mvolt); |
| 36 | int axp_set_dcdc3(unsigned int mvolt); |
| 37 | int axp_set_dcdc4(unsigned int mvolt); |
| 38 | int axp_set_dcdc5(unsigned int mvolt); |
| 39 | int axp_set_aldo1(unsigned int mvolt); |
| 40 | int axp_set_aldo2(unsigned int mvolt); |
| 41 | int axp_set_aldo3(unsigned int mvolt); |
| 42 | int axp_set_aldo4(unsigned int mvolt); |
Chen-Yu Tsai | 2e6911f | 2016-01-12 14:42:37 +0800 | [diff] [blame] | 43 | int axp_set_dldo(int dldo_num, unsigned int mvolt); |
Hans de Goede | d9ee84b | 2015-10-03 15:18:33 +0200 | [diff] [blame] | 44 | int axp_set_eldo(int eldo_num, unsigned int mvolt); |
Chen-Yu Tsai | d028fba | 2016-03-30 00:26:48 +0800 | [diff] [blame] | 45 | int axp_set_fldo(int fldo_num, unsigned int mvolt); |
Chen-Yu Tsai | 0e3efd3 | 2016-05-02 10:28:12 +0800 | [diff] [blame] | 46 | int axp_set_sw(bool on); |
Hans de Goede | d9ee84b | 2015-10-03 15:18:33 +0200 | [diff] [blame] | 47 | int axp_init(void); |
| 48 | int axp_get_sid(unsigned int *sid); |
| 49 | |
| 50 | #endif |