
Provide this feature in PXE, so that it matches extlinux. Use plat data for this, just like extlinux.
Signed-off-by: Simon Glass sjg@chromium.org ---
(no changes since v1)
boot/bootmeth_pxe.c | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-)
diff --git a/boot/bootmeth_pxe.c b/boot/bootmeth_pxe.c index f2b9ffaae89..6b3cb3c4b91 100644 --- a/boot/bootmeth_pxe.c +++ b/boot/bootmeth_pxe.c @@ -139,16 +139,16 @@ static int extlinux_pxe_read_file(struct udevice *dev, struct bootflow *bflow,
static int extlinux_pxe_boot(struct udevice *dev, struct bootflow *bflow) { + struct extlinux_plat *plat = dev_get_plat(dev); struct pxe_context *ctx = dev_get_priv(dev); - struct extlinux_info info; ulong addr; int ret;
addr = map_to_sysmem(bflow->buf); - info.dev = dev; - info.bflow = bflow; - ret = pxe_setup_ctx(ctx, extlinux_pxe_getfile, &info, false, - bflow->subdir, false, false, bflow); + plat->info.dev = dev; + plat->info.bflow = bflow; + ret = pxe_setup_ctx(ctx, extlinux_pxe_getfile, &plat->info, false, + bflow->subdir, false, plat->use_fallback, bflow); if (ret) return log_msg_ret("ctx", -EINVAL);
@@ -174,6 +174,7 @@ static struct bootmeth_ops extlinux_bootmeth_pxe_ops = { .read_bootflow = extlinux_pxe_read_bootflow, .read_file = extlinux_pxe_read_file, .boot = extlinux_pxe_boot, + .set_property = extlinux_set_property, };
static const struct udevice_id extlinux_bootmeth_pxe_ids[] = { @@ -188,4 +189,5 @@ U_BOOT_DRIVER(bootmeth_zpxe) = { .ops = &extlinux_bootmeth_pxe_ops, .bind = extlinux_bootmeth_pxe_bind, .priv_auto = sizeof(struct pxe_context), + .plat_auto = sizeof(struct extlinux_plat) };