/* SPDX-License-Identifier: GPL-2.0-or-later */ /* * Platform configuration options for DA9063 * * Copyright 2012 Dialog Semiconductor Ltd. * * Author: Michal Hajduk, Dialog Semiconductor * Author: Krystian Garbaciak, Dialog Semiconductor */ #ifndef __MFD_DA9063_PDATA_H__ #define __MFD_DA9063_PDATA_H__ /* * RGB LED configuration */ /* LED IDs for flags in struct led_info. */ enum { DA9063_GPIO11_LED, DA9063_GPIO14_LED, DA9063_GPIO15_LED, DA9063_LED_NUM }; #define DA9063_LED_ID_MASK 0x3 /* LED polarity for flags in struct led_info. */ #define DA9063_LED_HIGH_LEVEL_ACTIVE 0x0 #define DA9063_LED_LOW_LEVEL_ACTIVE 0x4 /* * General PMIC configuration */ /* HWMON ADC channels configuration */ #define DA9063_FLG_FORCE_IN0_MANUAL_MODE 0x0010 #define DA9063_FLG_FORCE_IN0_AUTO_MODE 0x0020 #define DA9063_FLG_FORCE_IN1_MANUAL_MODE 0x0040 #define DA9063_FLG_FORCE_IN1_AUTO_MODE 0x0080 #define DA9063_FLG_FORCE_IN2_MANUAL_MODE 0x0100 #define DA9063_FLG_FORCE_IN2_AUTO_MODE 0x0200 #define DA9063_FLG_FORCE_IN3_MANUAL_MODE 0x0400 #define DA9063_FLG_FORCE_IN3_AUTO_MODE 0x0800 /* Disable register caching. */ #define DA9063_FLG_NO_CACHE 0x0008 struct da9063; /* DA9063 platform data */ struct da9063_pdata { int (*init)(struct da9063 *da9063); int irq_base; bool key_power; unsigned flags; struct da9063_regulators_pdata *regulators_pdata; struct led_platform_data *leds_pdata; }; #endif /* __MFD_DA9063_PDATA_H__ */