LCD_KCAL: Introduce configurable kcal_min

Lower values such as 0-10 ultimately create a dark, washed out display, if a user accidently sets their kcal values to "0 0 0" they will loose visual control of the device, potentially requiring a hard reboot.
Introduce minimum kcal values to prevent this behavior.

Willing users can disable this protection by setting the kcal_min value to '0', however the default value of 35 is recommended.

sysfs:
echo "1/255" > /sys/devices/platform/kcal_ctrl.0/kcal_min

kcal_min will detect and block values attempting to set lower than itself, resetting the specific values to that of kcal_min. There is also behavior to adjust the kcal if kcal_min is set to a level higher than that of any kcal value(s).

Change-Id: I2cc71db55d79485f1a253844b4f67d46921666a4
LCD_KCAL: Prevent out-of-range input values

Change-Id: Ia9a9de1ce285007b5445149716a935cbf708d17e
Merge branch 'cm-11.0' of github.com:CyanogenMod/android_kernel_htc_msm8974 into kitkat