diff --git a/lib/fdtdec.c b/lib/fdtdec.c
index 60369fbc573f63592eeb57f54f2845cf2bb2b252..ac1fe0be20dc2915038b67318f15d88746e354e1 100644
--- a/lib/fdtdec.c
+++ b/lib/fdtdec.c
@@ -354,7 +354,8 @@ int fdtdec_check_fdt(void)
  */
 int fdtdec_prepare_fdt(void)
 {
-	if (((uintptr_t)gd->fdt_blob & 3) || fdt_check_header(gd->fdt_blob)) {
+	if (!gd->fdt_blob || ((uintptr_t)gd->fdt_blob & 3) ||
+	    fdt_check_header(gd->fdt_blob)) {
 		printf("No valid FDT found - please append one to U-Boot "
 			"binary, use u-boot-dtb.bin or define "
 			"CONFIG_OF_EMBED. For sandbox, use -d <file.dtb>\n");