Merge tag 'pwm/for-4.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/thierry...
[cascardo/linux.git] / include / linux / regulator / machine.h
index a1067d0..5d627c8 100644 (file)
@@ -42,6 +42,13 @@ struct regulator;
 #define REGULATOR_CHANGE_DRMS          0x10
 #define REGULATOR_CHANGE_BYPASS                0x20
 
+/* Regulator active discharge flags */
+enum regulator_active_discharge {
+       REGULATOR_ACTIVE_DISCHARGE_DEFAULT,
+       REGULATOR_ACTIVE_DISCHARGE_DISABLE,
+       REGULATOR_ACTIVE_DISCHARGE_ENABLE,
+};
+
 /**
  * struct regulator_state - regulator state during low power system states
  *
@@ -100,6 +107,9 @@ struct regulator_state {
  * @initial_state: Suspend state to set by default.
  * @initial_mode: Mode to set at startup.
  * @ramp_delay: Time to settle down after voltage change (unit: uV/us)
+ * @active_discharge: Enable/disable active discharge. The enum
+ *                   regulator_active_discharge values are used for
+ *                   initialisation.
  * @enable_time: Turn-on time of the rails (unit: microseconds)
  */
 struct regulation_constraints {
@@ -140,6 +150,8 @@ struct regulation_constraints {
        unsigned int ramp_delay;
        unsigned int enable_time;
 
+       unsigned int active_discharge;
+
        /* constraint flags */
        unsigned always_on:1;   /* regulator never off when system is on */
        unsigned boot_on:1;     /* bootloader/firmware enabled regulator */