mirror of
				https://github.com/torvalds/linux.git
				synced 2025-11-04 02:30:34 +02:00 
			
		
		
		
	PM QoS: Code reorganization
Move around the PM QoS misc devices management code for better readability. Signed-off-by: Jean Pihet <j-pihet@ti.com> Acked-by: markgross <markgross@thegnar.org> Reviewed-by: Kevin Hilman <khilman@ti.com> Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
This commit is contained in:
		
							parent
							
								
									cc74998618
								
							
						
					
					
						commit
						4a31a33425
					
				
					 1 changed files with 23 additions and 22 deletions
				
			
		| 
						 | 
				
			
			@ -188,28 +188,6 @@ static void update_target(struct pm_qos_object *o, struct plist_node *node,
 | 
			
		|||
					     NULL);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int register_pm_qos_misc(struct pm_qos_object *qos)
 | 
			
		||||
{
 | 
			
		||||
	qos->pm_qos_power_miscdev.minor = MISC_DYNAMIC_MINOR;
 | 
			
		||||
	qos->pm_qos_power_miscdev.name = qos->name;
 | 
			
		||||
	qos->pm_qos_power_miscdev.fops = &pm_qos_power_fops;
 | 
			
		||||
 | 
			
		||||
	return misc_register(&qos->pm_qos_power_miscdev);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int find_pm_qos_object_by_minor(int minor)
 | 
			
		||||
{
 | 
			
		||||
	int pm_qos_class;
 | 
			
		||||
 | 
			
		||||
	for (pm_qos_class = 0;
 | 
			
		||||
		pm_qos_class < PM_QOS_NUM_CLASSES; pm_qos_class++) {
 | 
			
		||||
		if (minor ==
 | 
			
		||||
			pm_qos_array[pm_qos_class]->pm_qos_power_miscdev.minor)
 | 
			
		||||
			return pm_qos_class;
 | 
			
		||||
	}
 | 
			
		||||
	return -1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * pm_qos_request - returns current system wide qos expectation
 | 
			
		||||
 * @pm_qos_class: identification of which qos value is requested
 | 
			
		||||
| 
						 | 
				
			
			@ -362,6 +340,29 @@ int pm_qos_remove_notifier(int pm_qos_class, struct notifier_block *notifier)
 | 
			
		|||
}
 | 
			
		||||
EXPORT_SYMBOL_GPL(pm_qos_remove_notifier);
 | 
			
		||||
 | 
			
		||||
/* User space interface to PM QoS classes via misc devices */
 | 
			
		||||
static int register_pm_qos_misc(struct pm_qos_object *qos)
 | 
			
		||||
{
 | 
			
		||||
	qos->pm_qos_power_miscdev.minor = MISC_DYNAMIC_MINOR;
 | 
			
		||||
	qos->pm_qos_power_miscdev.name = qos->name;
 | 
			
		||||
	qos->pm_qos_power_miscdev.fops = &pm_qos_power_fops;
 | 
			
		||||
 | 
			
		||||
	return misc_register(&qos->pm_qos_power_miscdev);
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int find_pm_qos_object_by_minor(int minor)
 | 
			
		||||
{
 | 
			
		||||
	int pm_qos_class;
 | 
			
		||||
 | 
			
		||||
	for (pm_qos_class = 0;
 | 
			
		||||
		pm_qos_class < PM_QOS_NUM_CLASSES; pm_qos_class++) {
 | 
			
		||||
		if (minor ==
 | 
			
		||||
			pm_qos_array[pm_qos_class]->pm_qos_power_miscdev.minor)
 | 
			
		||||
			return pm_qos_class;
 | 
			
		||||
	}
 | 
			
		||||
	return -1;
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
static int pm_qos_power_open(struct inode *inode, struct file *filp)
 | 
			
		||||
{
 | 
			
		||||
	long pm_qos_class;
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
		Reference in a new issue