Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 6afe1a1f authored by Pavel Machek's avatar Pavel Machek Committed by Len Brown
Browse files

PM: Remove legacy PM



AFAICT pm_send_all is a nop when noone uses pm_register...

Hmm.. can we just force CONFIG_PM_LEGACY=n, and see what happens?

Or maybe this is better idea? It may break build somewhere, but it
should be easy to fix... (it builds here, i386 and x86-64).

Signed-off-by: default avatarPavel Machek <pavel@suse.cz>
Acked-by: default avatarRalf Baechle <ralf@linux-mips.org>
Signed-off-by: default avatarRafael J. Wysocki <rjw@sisk.pl>
Signed-off-by: default avatarLen Brown <len.brown@intel.com>
parent a985aabe
Loading
Loading
Loading
Loading
+0 −8
Original line number Original line Diff line number Diff line
@@ -163,14 +163,11 @@ static int sysctl_pm_do_suspend(ctl_table *ctl, int write, struct file *filp,
	if ((mode != 1) && (mode != 5))
	if ((mode != 1) && (mode != 5))
		return -EINVAL;
		return -EINVAL;


	retval = pm_send_all(PM_SUSPEND, (void *)3);

	if (retval == 0) {
	if (retval == 0) {
		if (mode == 5)
		if (mode == 5)
		    retval = pm_do_bus_sleep();
		    retval = pm_do_bus_sleep();
		else
		else
		    retval = pm_do_suspend();
		    retval = pm_do_suspend();
		pm_send_all(PM_RESUME, (void *)0);
	}
	}


	return retval;
	return retval;
@@ -183,9 +180,6 @@ static int try_set_cmode(int new_cmode)
	if (!(clock_cmodes_permitted & (1<<new_cmode)))
	if (!(clock_cmodes_permitted & (1<<new_cmode)))
		return -EINVAL;
		return -EINVAL;


	/* tell all the drivers we're suspending */
	pm_send_all(PM_SUSPEND, (void *)3);

	/* now change cmode */
	/* now change cmode */
	local_irq_disable();
	local_irq_disable();
	frv_dma_pause_all();
	frv_dma_pause_all();
@@ -201,8 +195,6 @@ static int try_set_cmode(int new_cmode)
	frv_dma_resume_all();
	frv_dma_resume_all();
	local_irq_enable();
	local_irq_enable();


	/* tell all the drivers we're resuming */
	pm_send_all(PM_RESUME, (void *)0);
	return 0;
	return 0;
}
}


+2 −15
Original line number Original line Diff line number Diff line
@@ -258,7 +258,6 @@ int au_sleep(void)
static int pm_do_sleep(ctl_table * ctl, int write, struct file *file,
static int pm_do_sleep(ctl_table * ctl, int write, struct file *file,
		       void __user *buffer, size_t * len, loff_t *ppos)
		       void __user *buffer, size_t * len, loff_t *ppos)
{
{
	int retval = 0;
#ifdef SLEEP_TEST_TIMEOUT
#ifdef SLEEP_TEST_TIMEOUT
#define TMPBUFLEN2 16
#define TMPBUFLEN2 16
	char buf[TMPBUFLEN2], *p;
	char buf[TMPBUFLEN2], *p;
@@ -278,33 +277,21 @@ static int pm_do_sleep(ctl_table * ctl, int write, struct file *file,
		p = buf;
		p = buf;
		sleep_ticks = simple_strtoul(p, &p, 0);
		sleep_ticks = simple_strtoul(p, &p, 0);
#endif
#endif
		retval = pm_send_all(PM_SUSPEND, (void *) 2);

		if (retval)
			return retval;


		au_sleep();
		au_sleep();
		retval = pm_send_all(PM_RESUME, (void *) 0);
	}
	}
	return retval;
	return 0;
}
}


static int pm_do_suspend(ctl_table * ctl, int write, struct file *file,
static int pm_do_suspend(ctl_table * ctl, int write, struct file *file,
			 void __user *buffer, size_t * len, loff_t *ppos)
			 void __user *buffer, size_t * len, loff_t *ppos)
{
{
	int retval = 0;

	if (!write) {
	if (!write) {
		*len = 0;
		*len = 0;
	} else {
	} else {
		retval = pm_send_all(PM_SUSPEND, (void *) 2);
		if (retval)
			return retval;
		suspend_mode = 1;
		suspend_mode = 1;

		retval = pm_send_all(PM_RESUME, (void *) 0);
	}
	}
	return retval;
	return 0;
}
}




+0 −15
Original line number Original line Diff line number Diff line
@@ -1189,19 +1189,6 @@ static int suspend(int vetoable)
	int err;
	int err;
	struct apm_user	*as;
	struct apm_user	*as;


	if (pm_send_all(PM_SUSPEND, (void *)3)) {
		/* Vetoed */
		if (vetoable) {
			if (apm_info.connection_version > 0x100)
				set_system_power_state(APM_STATE_REJECT);
			err = -EBUSY;
			ignore_sys_suspend = 0;
			printk(KERN_WARNING "apm: suspend was vetoed.\n");
			goto out;
		}
		printk(KERN_CRIT "apm: suspend was vetoed, but suspending anyway.\n");
	}

	device_suspend(PMSG_SUSPEND);
	device_suspend(PMSG_SUSPEND);
	local_irq_disable();
	local_irq_disable();
	device_power_down(PMSG_SUSPEND);
	device_power_down(PMSG_SUSPEND);
@@ -1224,7 +1211,6 @@ static int suspend(int vetoable)
	device_power_up();
	device_power_up();
	local_irq_enable();
	local_irq_enable();
	device_resume();
	device_resume();
	pm_send_all(PM_RESUME, (void *)0);
	queue_event(APM_NORMAL_RESUME, NULL);
	queue_event(APM_NORMAL_RESUME, NULL);
 out:
 out:
	spin_lock(&user_list_lock);
	spin_lock(&user_list_lock);
@@ -1337,7 +1323,6 @@ static void check_events(void)
			if ((event != APM_NORMAL_RESUME)
			if ((event != APM_NORMAL_RESUME)
			    || (ignore_normal_resume == 0)) {
			    || (ignore_normal_resume == 0)) {
				device_resume();
				device_resume();
				pm_send_all(PM_RESUME, (void *)0);
				queue_event(event, NULL);
				queue_event(event, NULL);
			}
			}
			ignore_normal_resume = 0;
			ignore_normal_resume = 0;
+0 −10
Original line number Original line Diff line number Diff line
@@ -19,16 +19,6 @@ config PM
	  will issue the hlt instruction if nothing is to be done, thereby
	  will issue the hlt instruction if nothing is to be done, thereby
	  sending the processor to sleep and saving power.
	  sending the processor to sleep and saving power.


config PM_LEGACY
	bool "Legacy Power Management API (DEPRECATED)"
	depends on PM
	default n
	---help---
	   Support for pm_register() and friends.  This old API is obsoleted
	   by the driver model.

	   If unsure, say N.

config PM_DEBUG
config PM_DEBUG
	bool "Power Management Debug Support"
	bool "Power Management Debug Support"
	depends on PM
	depends on PM
+0 −1
Original line number Original line Diff line number Diff line
@@ -4,7 +4,6 @@ EXTRA_CFLAGS += -DDEBUG
endif
endif


obj-y				:= main.o
obj-y				:= main.o
obj-$(CONFIG_PM_LEGACY)		+= pm.o
obj-$(CONFIG_PM_SLEEP)		+= process.o console.o
obj-$(CONFIG_PM_SLEEP)		+= process.o console.o
obj-$(CONFIG_HIBERNATION)	+= swsusp.o disk.o snapshot.o swap.o user.o
obj-$(CONFIG_HIBERNATION)	+= swsusp.o disk.o snapshot.o swap.o user.o


Loading