summaryrefslogtreecommitdiffstats
path: root/drivers/of
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2014-10-29 12:15:00 -0600
committerGrant Likely <grant.likely@linaro.org>2014-11-04 16:43:09 +0000
commit50ba08f301a1b0310775deeed00c9b24ba75fe8a (patch)
treec1bae1ae585a16bde52d2901f952507fe452cee3 /drivers/of
parentb75b276bead4850c86e60747babe09be5c13d4d1 (diff)
downloadblackbird-op-linux-50ba08f301a1b0310775deeed00c9b24ba75fe8a.tar.gz
blackbird-op-linux-50ba08f301a1b0310775deeed00c9b24ba75fe8a.zip
of/fdt: Don't clear initial_boot_params if fdt_check_header() fails
If the device tree pointer is NULL, early_init_dt_verify() fails, leaving initial_boot_params unchanged. If the device tree pointer is non-NULL but invalid, early_init_dt_verify() again fails but this time it also clears initial_boot_params. Leave initial_boot_params unchanged if the device tree pointer is invalid. This doesn't fix a bug, but it makes the behavior more consistent and easier to analyze. Signed-off-by: Bjorn Helgaas <bhelgaas@google.com> Signed-off-by: Zhen Lei <thunder.leizhen@huawei.com> Signed-off-by: Grant Likely <grant.likely@linaro.org>
Diffstat (limited to 'drivers/of')
-rw-r--r--drivers/of/fdt.c9
1 files changed, 3 insertions, 6 deletions
diff --git a/drivers/of/fdt.c b/drivers/of/fdt.c
index 1d30b9f96466..535124670257 100644
--- a/drivers/of/fdt.c
+++ b/drivers/of/fdt.c
@@ -992,15 +992,12 @@ bool __init early_init_dt_verify(void *params)
if (!params)
return false;
- /* Setup flat device-tree pointer */
- initial_boot_params = params;
-
/* check device tree validity */
- if (fdt_check_header(params)) {
- initial_boot_params = NULL;
+ if (fdt_check_header(params))
return false;
- }
+ /* Setup flat device-tree pointer */
+ initial_boot_params = params;
return true;
}
OpenPOWER on IntegriCloud