On Thu, Feb 20, 2014 at 09:51:30PM +0900, Mark Brown wrote: > On Thu, Feb 20, 2014 at 12:07:52PM +0100, Markus Pargmann wrote: > > > --- a/drivers/regulator/core.c > > +++ b/drivers/regulator/core.c > > @@ -1908,8 +1908,6 @@ static int _regulator_do_disable(struct regulator_dev *rdev) > > > > trace_regulator_disable_complete(rdev_get_name(rdev)); > > > > - _notifier_call_chain(rdev, REGULATOR_EVENT_DISABLE, > > - NULL); > > return 0; > > } > > > > @@ -1933,6 +1931,8 @@ static int _regulator_disable(struct regulator_dev *rdev) > > rdev_err(rdev, "failed to disable\n"); > > return ret; > > } > > + _notifier_call_chain(rdev, REGULATOR_EVENT_DISABLE, > > + NULL); > > } > > > > rdev->use_count = 0; > > This change doesn't seem obviously related? I am using this function from _regulator_force_disable(), which calls _notifier_call_chain() with one additional flag "REGULATOR_EVENT_FORCE_DISABLE". To prevent calling _notifier_call_chain() twice for the force_disable case, I moved that function call out of _regulator_do_disable(). Regards, Markus -- Pengutronix e.K. | | Industrial Linux Solutions | http://www.pengutronix.de/ | Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 | Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
Attachment:
signature.asc
Description: Digital signature