Loading drivers/regulator/core.c +17 −0 Original line number Diff line number Diff line Loading @@ -724,6 +724,23 @@ static int set_machine_constraints(struct regulator_dev *rdev, } } if (constraints->initial_mode) { if (!ops->set_mode) { printk(KERN_ERR "%s: no set_mode operation for %s\n", __func__, name); ret = -EINVAL; goto out; } ret = ops->set_mode(rdev, constraints->initial_mode); if (ret < 0) { printk(KERN_ERR "%s: failed to set initial mode for %s: %d\n", __func__, name, ret); goto out; } } /* if always_on is set then turn the regulator on if it's not * already on. */ if (constraints->always_on && ops->enable && Loading include/linux/regulator/machine.h +4 −0 Original line number Diff line number Diff line Loading @@ -83,6 +83,7 @@ struct regulator_state { * @state_standby: State for regulator when system is suspended in standby * mode. * @initial_state: Suspend state to set by default. * @initial_mode: Mode to set at startup. */ struct regulation_constraints { Loading Loading @@ -111,6 +112,9 @@ struct regulation_constraints { struct regulator_state state_standby; suspend_state_t initial_state; /* suspend state to set at init */ /* mode to set on startup */ unsigned int initial_mode; /* constriant flags */ unsigned always_on:1; /* regulator never off when system is on */ unsigned boot_on:1; /* bootloader/firmware enabled regulator */ Loading Loading
drivers/regulator/core.c +17 −0 Original line number Diff line number Diff line Loading @@ -724,6 +724,23 @@ static int set_machine_constraints(struct regulator_dev *rdev, } } if (constraints->initial_mode) { if (!ops->set_mode) { printk(KERN_ERR "%s: no set_mode operation for %s\n", __func__, name); ret = -EINVAL; goto out; } ret = ops->set_mode(rdev, constraints->initial_mode); if (ret < 0) { printk(KERN_ERR "%s: failed to set initial mode for %s: %d\n", __func__, name, ret); goto out; } } /* if always_on is set then turn the regulator on if it's not * already on. */ if (constraints->always_on && ops->enable && Loading
include/linux/regulator/machine.h +4 −0 Original line number Diff line number Diff line Loading @@ -83,6 +83,7 @@ struct regulator_state { * @state_standby: State for regulator when system is suspended in standby * mode. * @initial_state: Suspend state to set by default. * @initial_mode: Mode to set at startup. */ struct regulation_constraints { Loading Loading @@ -111,6 +112,9 @@ struct regulation_constraints { struct regulator_state state_standby; suspend_state_t initial_state; /* suspend state to set at init */ /* mode to set on startup */ unsigned int initial_mode; /* constriant flags */ unsigned always_on:1; /* regulator never off when system is on */ unsigned boot_on:1; /* bootloader/firmware enabled regulator */ Loading