summaryrefslogtreecommitdiff
path: root/board/samsung/common/gadget.c
diff options
context:
space:
mode:
authorLukasz Majewski <l.majewski@samsung.com>2014-07-29 09:10:44 (GMT)
committerMarek Vasut <marex@denx.de>2014-08-20 11:10:32 (GMT)
commit8fc171318e352ae191cdf527252e9166a56851ab (patch)
tree890e105c434cbff8bcf2a55e761086fce32e785e /board/samsung/common/gadget.c
parente49f14af1349eef94e41b636320bbfcace7403b5 (diff)
downloadu-boot-fsl-qoriq-8fc171318e352ae191cdf527252e9166a56851ab.tar.xz
samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget
It is necessary to provide the same Vendor and Product IDs as the one in the original Linux kernel code. Without this change the USB mass storage gadget is not working with Windows7. Signed-off-by: Lukasz Majewski <l.majewski@samsung.com> Acked-by: Minkyu Kang <mk7.kang@samsung.com>
Diffstat (limited to 'board/samsung/common/gadget.c')
-rw-r--r--board/samsung/common/gadget.c24
1 files changed, 24 insertions, 0 deletions
diff --git a/board/samsung/common/gadget.c b/board/samsung/common/gadget.c
new file mode 100644
index 0000000..6a1e57f
--- /dev/null
+++ b/board/samsung/common/gadget.c
@@ -0,0 +1,24 @@
+/*
+ * Copyright (C) 2013 Samsung Electronics
+ * Lukasz Majewski <l.majewski@samsung.com>
+ *
+ * SPDX-License-Identifier: GPL-2.0+
+ */
+
+#include <common.h>
+#include <linux/usb/ch9.h>
+
+int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
+{
+ if (!strcmp(name, "usb_dnl_thor")) {
+ put_unaligned(CONFIG_G_DNL_THOR_VENDOR_NUM, &dev->idVendor);
+ put_unaligned(CONFIG_G_DNL_THOR_PRODUCT_NUM, &dev->idProduct);
+ } else if (!strcmp(name, "usb_dnl_ums")) {
+ put_unaligned(CONFIG_G_DNL_UMS_VENDOR_NUM, &dev->idVendor);
+ put_unaligned(CONFIG_G_DNL_UMS_PRODUCT_NUM, &dev->idProduct);
+ } else {
+ put_unaligned(CONFIG_G_DNL_VENDOR_NUM, &dev->idVendor);
+ put_unaligned(CONFIG_G_DNL_PRODUCT_NUM, &dev->idProduct);
+ }
+ return 0;
+}