1 // SPDX-License-Identifier: GPL-2.0+
2 /*
3  *  Copyright (C) 2013 Samsung Electronics
4  *  Lukasz Majewski <l.majewski@samsung.com>
5  */
6 
7 #include <common.h>
8 #include <linux/usb/ch9.h>
9 
10 #define EXYNOS_G_DNL_THOR_VENDOR_NUM	0x04E8
11 #define EXYNOS_G_DNL_THOR_PRODUCT_NUM	0x685D
12 
13 #define EXYNOS_G_DNL_UMS_VENDOR_NUM	0x0525
14 #define EXYNOS_G_DNL_UMS_PRODUCT_NUM	0xA4A5
15 
g_dnl_bind_fixup(struct usb_device_descriptor * dev,const char * name)16 int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
17 {
18 	if (!strcmp(name, "usb_dnl_thor")) {
19 		put_unaligned(EXYNOS_G_DNL_THOR_VENDOR_NUM, &dev->idVendor);
20 		put_unaligned(EXYNOS_G_DNL_THOR_PRODUCT_NUM, &dev->idProduct);
21 	} else if (!strcmp(name, "usb_dnl_ums")) {
22 		put_unaligned(EXYNOS_G_DNL_UMS_VENDOR_NUM, &dev->idVendor);
23 		put_unaligned(EXYNOS_G_DNL_UMS_PRODUCT_NUM, &dev->idProduct);
24 	} else {
25 		put_unaligned(CONFIG_USB_GADGET_VENDOR_NUM, &dev->idVendor);
26 		put_unaligned(CONFIG_USB_GADGET_PRODUCT_NUM, &dev->idProduct);
27 	}
28 	return 0;
29 }
30