diff --git a/drivers/core/device.c b/drivers/core/device.c index 05dadf98f95950f0b5c29a4ff113dcab7ce3ee74..84f0f0fbf0e87b450f33752706577b51e92c05f7 100644 --- a/drivers/core/device.c +++ b/drivers/core/device.c @@ -404,7 +404,8 @@ int device_probe(struct udevice *dev) goto fail; } - if (drv->ofdata_to_platdata && dev_has_of_node(dev)) { + if (drv->ofdata_to_platdata && + (CONFIG_IS_ENABLED(OF_PLATDATA) || dev_has_of_node(dev))) { ret = drv->ofdata_to_platdata(dev); if (ret) goto fail; diff --git a/drivers/serial/sandbox.c b/drivers/serial/sandbox.c index 33102fc872f20fd1b1533403ed9c33022fc7df41..2f7bc248871ff8a2e8ce836a9804beb6563b5f11 100644 --- a/drivers/serial/sandbox.c +++ b/drivers/serial/sandbox.c @@ -220,6 +220,8 @@ static int sandbox_serial_ofdata_to_platdata(struct udevice *dev) const char *colour; int i; + if (CONFIG_IS_ENABLED(OF_PLATDATA)) + return 0; plat->colour = -1; colour = fdt_getprop(gd->fdt_blob, dev_of_offset(dev), "sandbox,text-colour", NULL);