PNP: fix restoring devices after hibernation
On returning from hibernation 'restore' callback is called,
not 'resume'.  Fix it.
Fixes: eaf140b60e (PNP: convert PNP driver bus legacy pm_ops to dev_pm_ops)
Signed-off-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Cc: 3.12+ <stable@vger.kernel.org> # 3.12+
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
			
			
This commit is contained in:
		
							parent
							
								
									dc1ccc4815
								
							
						
					
					
						commit
						8a37ea50e7
					
				| @ -197,6 +197,11 @@ static int pnp_bus_freeze(struct device *dev) | ||||
| 	return __pnp_bus_suspend(dev, PMSG_FREEZE); | ||||
| } | ||||
| 
 | ||||
| static int pnp_bus_poweroff(struct device *dev) | ||||
| { | ||||
| 	return __pnp_bus_suspend(dev, PMSG_HIBERNATE); | ||||
| } | ||||
| 
 | ||||
| static int pnp_bus_resume(struct device *dev) | ||||
| { | ||||
| 	struct pnp_dev *pnp_dev = to_pnp_dev(dev); | ||||
| @ -234,9 +239,14 @@ static int pnp_bus_resume(struct device *dev) | ||||
| } | ||||
| 
 | ||||
| static const struct dev_pm_ops pnp_bus_dev_pm_ops = { | ||||
| 	/* Suspend callbacks */ | ||||
| 	.suspend = pnp_bus_suspend, | ||||
| 	.freeze = pnp_bus_freeze, | ||||
| 	.resume = pnp_bus_resume, | ||||
| 	/* Hibernate callbacks */ | ||||
| 	.freeze = pnp_bus_freeze, | ||||
| 	.thaw = pnp_bus_resume, | ||||
| 	.poweroff = pnp_bus_poweroff, | ||||
| 	.restore = pnp_bus_resume, | ||||
| }; | ||||
| 
 | ||||
| struct bus_type pnp_bus_type = { | ||||
|  | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user