init: Allow for arbitrary long /proc/cpuinfo output

get_hardware_name() uses a fixed size buffer to slurp the contents of
/proc/cpuinfo into and with newer multicore systems this is not big
enough, leading to the inability to pick up the hardware name.

Fix this by using a dynamically allocated, exponentially growing buffer.

Change-Id: I7bf48a695a9667789c267a59ce8c6431f2d3bb0c
Signed-off-by: Jon Medhurst <tixy@linaro.org>