Fastboot oem command is updated with SPI specific functionality. Signed-off-by: Dileep Katta <dileep.ka...@linaro.org> --- Note: This is on top of Rob Herring patches submitted to support oem format command Ref: https://patchwork.ozlabs.org/patch/433056/ https://patchwork.ozlabs.org/patch/433057/ drivers/usb/gadget/f_fastboot.c | 26 ++++++++++++++++++++++++++ 1 file changed, 26 insertions(+)
diff --git a/drivers/usb/gadget/f_fastboot.c b/drivers/usb/gadget/f_fastboot.c index a170eea..04fa4c2 100644 --- a/drivers/usb/gadget/f_fastboot.c +++ b/drivers/usb/gadget/f_fastboot.c @@ -591,7 +591,33 @@ static void cb_flash(struct usb_ep *ep, struct usb_request *req) static void cb_oem(struct usb_ep *ep, struct usb_request *req) { char *cmd = req->buf; + #ifdef CONFIG_FASTBOOT_FLASH +#ifdef CONFIG_SPL_SPI_SUPPORT + char *sf_erase[4] = {"sf", "erase", "0", "20000"}; + int status; + char *sf_probe[3] = {"sf", "probe", "0"}; + if (strncmp(req->buf + 4, "spi", 3) == 0) { + boot_from_spi = 1; + status = do_spi_flash(NULL, 0, 3, sf_probe); + if (status) { + fastboot_tx_write_str("FAILcould not probe SPI"); + return; + } + status = do_spi_flash(NULL, 0, 4, sf_erase); + if (status) { + fastboot_tx_write_str("FAILcould not erase SPI"); + return; + } + fastboot_tx_write_str("OKAY"); + return; + } else if (strncmp(req->buf + 4, "mmc", 3) == 0) { + boot_from_spi = 0; + fastboot_tx_write_str("OKAY"); + return; + } +#endif + if (strncmp("format", cmd + 4, 6) == 0) { char cmdbuf[32]; sprintf(cmdbuf, "gpt write mmc %x $partitions", -- 1.8.3.2 _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot