The logic for part_init() is not ideal, since it silently ignores read
errors. Each partition type tries to read the disk and presumably fails
as well. No error is reported, however, so there is no indication that
anything is wrong.
Update the function to return an error, and update each of the probe
functions to do the same, trying to minimise changes.
Signed-off-by: Simon Glass <sjg@chromium.org>