]> Git Repo - J-u-boot.git/blobdiff - common/spl/spl_sdp.c
Merge tag 'u-boot-imx-master-20250127' of https://gitlab.denx.de/u-boot/custodians...
[J-u-boot.git] / common / spl / spl_sdp.c
index e7f7b6841163463b50f37bcfdb7faffc15f339a2..9ca80bd534f8ba5bad46d6df5e5c1664af6b6a33 100644 (file)
@@ -4,32 +4,37 @@
  * Author: Stefan Agner <[email protected]>
  */
 
-#include <common.h>
 #include <log.h>
 #include <spl.h>
 #include <usb.h>
 #include <g_dnl.h>
 #include <sdp.h>
+#include <linux/printk.h>
 
 static int spl_sdp_load_image(struct spl_image_info *spl_image,
                              struct spl_boot_device *bootdev)
 {
-       int ret;
        const int controller_index = CONFIG_SPL_SDP_USB_DEV;
+       struct udevice *udc;
+       int ret;
 
-       usb_gadget_initialize(controller_index);
+       ret = udc_device_get_by_index(controller_index, &udc);
+       if (ret)
+               return ret;
+
+       board_usb_init(controller_index, USB_INIT_DEVICE);
 
        g_dnl_clear_detach();
        ret = g_dnl_register("usb_dnl_sdp");
        if (ret) {
                pr_err("SDP dnl register failed: %d\n", ret);
-               return ret;
+               goto err_detach;
        }
 
-       ret = sdp_init(controller_index);
+       ret = sdp_init(udc);
        if (ret) {
                pr_err("SDP init failed: %d\n", ret);
-               return -ENODEV;
+               goto err_unregister;
        }
 
        /*
@@ -37,10 +42,13 @@ static int spl_sdp_load_image(struct spl_image_info *spl_image,
         * or it loads a FIT image and returns it to be handled by the SPL
         * code.
         */
-       ret = spl_sdp_handle(controller_index, spl_image);
+       ret = spl_sdp_handle(udc, spl_image, bootdev);
        debug("SDP ended\n");
 
-       usb_gadget_release(controller_index);
+err_unregister:
+       g_dnl_unregister();
+err_detach:
+       udc_device_put(udc);
        return ret;
 }
 SPL_LOAD_IMAGE_METHOD("USB SDP", 0, BOOT_DEVICE_BOARD, spl_sdp_load_image);
This page took 0.023562 seconds and 4 git commands to generate.