Merge the UHID driver, backported from Linux 3.8.

Merge the UHID driver, backported from Linux 3.8.

The userspace HID driver is needed by the KK Bluetooth stack in order to
process input from Bluetooth keyboards.

Credit: This is almost an identical copy of the @plaguedbypenguins work
for @KonstaT fork of zte-kernel-msm7x27. Changes copied from
@kerberizer's fork
Ref:
https://github.com/kerberizer/android_kernel_sony_msm8x60/commit/2acf0de488ed052af54a9652d891e19e6771966f