It might be desirable to have a different product ID for the SPL gadget. Several boards use dubious hack to achieve this like adding an hardcoded offset to the configurable main product ID.
Add a new config option to set the product ID to use in the SPL and use it in the ethernet and download gadgets. Signed-off-by: Alban Bedel <alban.be...@aerq.com> --- common/spl/Kconfig | 6 ++++++ drivers/usb/gadget/ether.c | 2 +- drivers/usb/gadget/g_dnl.c | 2 +- 3 files changed, 8 insertions(+), 2 deletions(-) diff --git a/common/spl/Kconfig b/common/spl/Kconfig index ac61b25a0660..196f3cfc5558 100644 --- a/common/spl/Kconfig +++ b/common/spl/Kconfig @@ -1182,6 +1182,12 @@ config SPL_USB_GADGET if SPL_USB_GADGET +config SPL_USB_GADGET_PRODUCT_NUM + hex "Product ID of the SPL USB device" + default 0x0 + help + Product ID of the USB device emulated in SPL, reported to the host device. + config SPL_USB_ETHER bool "Support USB Ethernet drivers" depends on SPL_NET diff --git a/drivers/usb/gadget/ether.c b/drivers/usb/gadget/ether.c index 430732865723..18195d3ee19b 100644 --- a/drivers/usb/gadget/ether.c +++ b/drivers/usb/gadget/ether.c @@ -2078,7 +2078,7 @@ static int eth_bind(struct usb_gadget *gadget) device_desc.idVendor __constant_cpu_to_le16(CONFIG_USB_GADGET_VENDOR_NUM); device_desc.idProduct - __constant_cpu_to_le16(CONFIG_USB_GADGET_PRODUCT_NUM); + __constant_cpu_to_le16(CONFIG_VAL(USB_GADGET_PRODUCT_NUM)); #else device_desc.idVendor __constant_cpu_to_le16(RNDIS_VENDOR_NUM); diff --git a/drivers/usb/gadget/g_dnl.c b/drivers/usb/gadget/g_dnl.c index afb7b74f3057..85297cc0e501 100644 --- a/drivers/usb/gadget/g_dnl.c +++ b/drivers/usb/gadget/g_dnl.c @@ -63,7 +63,7 @@ static struct usb_device_descriptor device_desc = { .bDeviceSubClass = 0, /*0x02:CDC-modem , 0x00:CDC-serial*/ .idVendor = __constant_cpu_to_le16(CONFIG_USB_GADGET_VENDOR_NUM), - .idProduct = __constant_cpu_to_le16(CONFIG_USB_GADGET_PRODUCT_NUM), + .idProduct = __constant_cpu_to_le16(CONFIG_VAL(USB_GADGET_PRODUCT_NUM)), /* .iProduct = DYNAMIC */ /* .iSerialNumber = DYNAMIC */ .bNumConfigurations = 1, -- 2.32.0
smime.p7s
Description: S/MIME cryptographic signature