persistent_ram: Fix buffer size clamping during writes

commit 484dd30e016eb425b0de871357fff2c9bb93be45 upstream.

This is a longstanding bug, almost unnoticeable when calling
persistent_ram_write() for small buffers.

But when called for large data buffers, the write routine behaves
incorrectly, as the size may never update: instead of clamping
the size to the maximum buffer size, buffer_size_add_clamp() returns
an error (which is never checked by the write routine, btw).

To fix this, we now use buffer_size_add() that actually clamps the
size to the max value.

Also remove buffer_size_add_clamp(), it is no longer needed.

Signed-off-by: Anton Vorontsov <anton.vorontsov@linaro.org>
Acked-by: Colin Cross <ccross@android.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Update intelliactive and interactive CPU Govs from Bacon GOV.
https://github.com/neobuddy89/hammerhead_kernel_caf/commit/b42af82c24ee17425a70b6dfe1ed6cd65d184a4b

All the rest we have already, and much more advanced.

Conflicts:
	drivers/cpufreq/cpufreq_intelliactive.c
	drivers/cpufreq/cpufreq_interactive.c