params: <level>_initcall-like kernel parameters

This patch adds a set of macros that can be used to declare
kernel parameters to be parsed _before_ initcalls at a chosen
level are executed.  We rename the now-unused "flags" field of
struct kernel_param as the level.  It's signed, for when we
use this for early params as well, in future.

Linker macro collating init calls had to be modified in order
to add additional symbols between levels that are later used
by the init code to split the calls into blocks.

Signed-off-by: Pawel Moll <pawel.moll@arm.com>
Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
Signed-off-by: Blechd0se <alex.christ@hotmail.de>

Conflicts:
	arch/powerpc/mm/hugetlbpage.c
	include/linux/moduleparam.h
	init/main.c
omap: omap2plus: allow to lock MPU freq during suspend

The new smartreflex driver may prevent a proper suspend
and thus drains battery. This patch allows to set the max
freq during suspend (not early suspend).

Its similiar to my interactive solution, but it won't kick
in as long as the system isn't suspended properly.

Controllable via; /sys/module/omap2plus_cpufreq/parameters/safe_suspend_freq

If no value is set, it takes the current freq.
Taken from 3.4 branch and adapted for our needs;
https://github.com/Quarx2k/jordan-kernel/commit/64b6d8cc3a881300138fc2638e75f09e2dc781d8

Signed-off-by: Blechd0se <alex.christ@hotmail.de>
touchscreen: add sweep2wake functionality

Big shout out to @showp1984 who developed this nice
feature.
I was tired of pressing the power button over and over
again and since i flash plenty of kernels a day, i needed
a "smarter choice".
This adds the sweep2wake functionality, controllable via;
echo 1 > /sys/android_touch/sweep2wake

Its off by default, since i don't know how much it will
affect battery life.

Signed-off-by: Blechd0se <alex.christ@hotmail.de>