cpuidle: menu: fixed wrapping timers at 4.294 seconds
cpuidle: menu: fixed wrapping timers at 4.294 seconds

Cpuidle menu governor is using u32 as a temporary datatype for storing
nanosecond values which wrap around at 4.294 seconds. This causes errors
in predicted sleep times resulting in higher than should be C state
selection and increased power consumption. This also breaks cpuidle
state residency statistics.

cc: 4fbacc2fa0ffdbb11bf1ad6925b886ebd08dd15f@kernel.org # .32.x through .39.x
Signed-off-by: Tero Kristo <d1db0f2f3e6c8c65c5653364018a95bfbc88c501@nokia.com>
Signed-off-by: Len Brown <b060cfa1096cc6e8be83699ddb4ed8a77dd63af5@intel.com>

TeamVee-Kanas/android_kernel_samsung_kanas,KristFoundation/Programs,TeamVee-Kanas/android_kernel_samsung_kanas,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,KristFoundation/Programs,TeamVee-Kanas/android_kernel_samsung_kanas,TeamVee-Kanas/android_kernel_samsung_kanas,TeamVee-Kanas/android_kernel_samsung_kanas