exfat: fix built-in initialization

Samsung's exfat code is meant to be compiled as two separate modules.
Make sure the core is initialized before registering the FS.
uksm: squashed fixups

uksm: cleanups and scheduling changes

- Fix deprecated function warnings
- Use nice 15 instead of 5
- Use fixed periods instead of adjusting
- Rewrite pages_to_scan logic
- Modify kthread behavior to freeze more aggressively

uksm: fixups

- enforce usage limit across all rungs
- mark uksm_do_scan hot
- frob a few tuning knobs

uksm: back off during load
dkp: fix kobject re-init warning
input: touchkeys: fix an obvious deadlock
leds: pm8xxx: clean up the animations

Apply upper and lower bounds to the animation length.  It looks pretty
choppy when the animation runs slowly.
uksm: enhancements and cleanups

 - Replace the old throttle multiplier with a divisor
 - Fix up the logic for saved_pages_to_scan
 - Fix a couple memory leaks and assorted tiny bugs
 - Add a cpu_scales tuner to better configure rung CPU usage
uksm: modify ema logic and tidy up
uksm: ARM scanning routines

These routines are tuned towards lower clock speeds, when UKSM ought to
be running anyway.  They make too many assumptions to have any
general-purpose utility, but work well for our purposes.
uksm: clean up and remove some (no)inlines
uksm: lower the default CPU limit
uksm: emulate KSM sysfs properly

This stops Performance Control from crashing violently when trying to
adjust KSM settings.  CM doesn't support UKSM's sysfs, so legacy KSM
attrs are still needed.
uksm: fixes for legacy KSM sysfs

During boot, init.cm.rc sets sleep_millisecs and pages_to_scan.  Its
sleep_millisecs value is way too conservative, so block it.  Rescale
pages_to_scan so our default CPU limit lines up with KSM's default.
dhd: fix potential memory corruption bug

Conflicts:
	drivers/net/wireless/bcmdhd/dhd_cdc.c
dhd: fix a few warnings and shrink hanger_item_t

Conflicts:
	drivers/net/wireless/bcmdhd/wl_cfg80211.c
dhd: sanitize wakelock usage

Three separate wakelocks that are used almost equivalently is excessive.
Locking and unlocking them several times per millisecond during
transfers is absurd.  Use one wakelock and a timer to release it.

Conflicts:
	drivers/net/wireless/bcmdhd/dhd_linux.c
dhd: hardcode bus type

No need for SPI when we know at compile-time that we're using SDIO.
dhd: fix new wakelock code

I really should give this "sleep" thing a try.  I hear it's easier to
think clearly after you do it.
include/linux/elevator.h: Add elevator_queue_empty_fn to support sioplus iosched
block/sioplus-iosched.c: add sioplus scheduler - credit boype

Conflicts:
	block/Kconfig.iosched
	block/Makefile
dhd: fix a mismerge