| /* SPDX-License-Identifier: GPL-2.0-only */ |
| /* |
| * Copyright (C) ST-Ericsson SA 2010 |
| * |
| * Author: Bengt Jonsson <bengt.jonsson@stericsson.com> for ST-Ericsson, |
| * Jonas Aaberg <jonas.aberg@stericsson.com> for ST-Ericsson |
| */ |
| |
| #ifndef DBX500_REGULATOR_H |
| #define DBX500_REGULATOR_H |
| |
| #include <linux/platform_device.h> |
| |
| /** |
| * struct dbx500_regulator_info - dbx500 regulator information |
| * @desc: regulator description |
| * @is_enabled: status of the regulator |
| * @epod_id: id for EPOD (power domain) |
| * @is_ramret: RAM retention switch for EPOD (power domain) |
| * |
| */ |
| struct dbx500_regulator_info { |
| struct regulator_desc desc; |
| bool is_enabled; |
| u16 epod_id; |
| bool is_ramret; |
| bool exclude_from_power_state; |
| }; |
| |
| void power_state_active_enable(void); |
| int power_state_active_disable(void); |
| |
| |
| #ifdef CONFIG_REGULATOR_DEBUG |
| int ux500_regulator_debug_init(struct platform_device *pdev, |
| struct dbx500_regulator_info *regulator_info, |
| int num_regulators); |
| |
| int ux500_regulator_debug_exit(void); |
| #else |
| |
| static inline int ux500_regulator_debug_init(struct platform_device *pdev, |
| struct dbx500_regulator_info *regulator_info, |
| int num_regulators) |
| { |
| return 0; |
| } |
| |
| static inline int ux500_regulator_debug_exit(void) |
| { |
| return 0; |
| } |
| |
| #endif |
| #endif |