From: Frank Li Date: Tue, 28 Oct 2025 02:46:25 +0000 (+0800) Subject: Add serial# for SPL SDP download X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=53d98faad76f8a0afd0ea91e9d00b747c6f88d5a;p=thirdparty%2Fu-boot.git Add serial# for SPL SDP download After update this, uuu(>1.6) can use below command to filter out devices when multi boards connected. uuu -ms ... [sudo] uuu -lsusb can list known devices with serial# informaiton. Serial number is retrieved via get_board_serial() and passed to g_dnl_set_serialnumber(). This part is conditionally compiled for i.MX94 only now. Signed-off-by: Frank Li Signed-off-by: Alice Guo Reviewed-by: Ye Li --- diff --git a/arch/arm/mach-imx/spl.c b/arch/arm/mach-imx/spl.c index 518d9cb1262..57ae81c7834 100644 --- a/arch/arm/mach-imx/spl.c +++ b/arch/arm/mach-imx/spl.c @@ -21,6 +21,8 @@ #include #include #include +#include +#include DECLARE_GLOBAL_DATA_PTR; @@ -184,6 +186,16 @@ u32 spl_boot_device(void) #ifdef CONFIG_SPL_USB_GADGET int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name) { +#ifdef CONFIG_ENV_VARS_UBOOT_RUNTIME_CONFIG +#ifdef CONFIG_IMX94 + struct tag_serialnr serialnr; + char serial_string[0x21] = {0}; + + get_board_serial(&serialnr); + snprintf(serial_string, sizeof(serial_string), "%08x%08x", serialnr.high, serialnr.low); + g_dnl_set_serialnumber(serial_string); +#endif +#endif put_unaligned(CONFIG_USB_GADGET_PRODUCT_NUM + 0xfff, &dev->idProduct); return 0;