Skip to contentSkip to conversation

samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

PATCH New Lukasz Majewski 4 participants 8 messages Jul 29, 2014 – Aug 25, 2014 Arm Samsung Exynos

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 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.

---
 board/samsung/common/Makefile |  2 +-
 board/samsung/common/gadget.c | 24 ++++++++++++++++++++++++
 board/samsung/common/thor.c   | 21 ---------------------
 include/configs/exynos4-dt.h  |  2 ++
 4 files changed, 27 insertions(+), 22 deletions(-)
 create mode 100644 board/samsung/common/gadget.c
 delete mode 100644 board/samsung/common/thor.c
board/samsung/common/Makefile +1 -1
index 41d0cc3..93347ef 100644
@@ -6,7 +6,7 @@
 #
 
 obj-$(CONFIG_SOFT_I2C_MULTI_BUS) += multi_i2c.o
-obj-$(CONFIG_THOR_FUNCTION) += thor.o
+obj-$(CONFIG_USBDOWNLOAD_GADGET) += gadget.o
 obj-$(CONFIG_MISC_COMMON) += misc.o
 
 ifndef CONFIG_SPL_BUILD
board/samsung/common/gadget.c new file +24 -0
new file mode 100644
index 0000000..6a1e57f
@@ -0,0 +1,24 @@
+/*
+ *  Copyright (C) 2013 Samsung Electronics
+ *  Lukasz Majewski <[email protected]>
+ *
+ * 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;
+}
board/samsung/common/thor.c deleted +0 -21
deleted file mode 100644
index 1c7630d..0000000
@@ -1,21 +0,0 @@
-/*
- *  Copyright (C) 2013 Samsung Electronics
- *  Lukasz Majewski <[email protected]>
- *
- * 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 {
-		put_unaligned(CONFIG_G_DNL_VENDOR_NUM, &dev->idVendor);
-		put_unaligned(CONFIG_G_DNL_PRODUCT_NUM, &dev->idProduct);
-	}
-	return 0;
-}
include/configs/exynos4-dt.h +2 -0
index 44e6ab4..7dac1a3 100644
@@ -105,6 +105,8 @@
 #define CONFIG_G_DNL_PRODUCT_NUM 0x6601
 #define CONFIG_G_DNL_THOR_VENDOR_NUM CONFIG_G_DNL_VENDOR_NUM
 #define CONFIG_G_DNL_THOR_PRODUCT_NUM 0x685D
+#define CONFIG_G_DNL_UMS_VENDOR_NUM 0x0525
+#define CONFIG_G_DNL_UMS_PRODUCT_NUM 0xA4A5
 #define CONFIG_G_DNL_MANUFACTURER "Samsung"
 
 /* Miscellaneous configurable options */
Signature · 1 line
2.0.0.rc2
#1 lore raw

PATCH 1/1 samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

Hi Minkyu,

Quoted 5 lines

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.

Do you have any comments to this patch?

Would you consider taking this patch to u-boot-samsung tree or should I take it to u-boot-dfu since it fixes things related to UMS gadget?

Quoted 104 lines
---
 board/samsung/common/Makefile |  2 +-
 board/samsung/common/gadget.c | 24 ++++++++++++++++++++++++
 board/samsung/common/thor.c   | 21 ---------------------
 include/configs/exynos4-dt.h  |  2 ++
 4 files changed, 27 insertions(+), 22 deletions(-)
 create mode 100644 board/samsung/common/gadget.c
 delete mode 100644 board/samsung/common/thor.c
(quoted diff) +0 -0

b/board/samsung/common/Makefile index 41d0cc3..93347ef 100644

board/samsung/common/Makefile +1 -1
@@ -6,7 +6,7 @@
 #
 
 obj-$(CONFIG_SOFT_I2C_MULTI_BUS) += multi_i2c.o
-obj-$(CONFIG_THOR_FUNCTION) += thor.o
+obj-$(CONFIG_USBDOWNLOAD_GADGET) += gadget.o
 obj-$(CONFIG_MISC_COMMON) += misc.o
 
 ifndef CONFIG_SPL_BUILD
(quoted diff) +0 -0

b/board/samsung/common/gadget.c new file mode 100644 index 0000000..6a1e57f

board/samsung/common/gadget.c new file +11 -0
@@ -0,0 +1,24 @@
+/*
+ *  Copyright (C) 2013 Samsung Electronics
+ *  Lukasz Majewski <[email protected]>
+ *
+ * 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) +{

board/samsung/common/gadget.c new file +2 -0
+	if (!strcmp(name, "usb_dnl_thor")) {
+		put_unaligned(CONFIG_G_DNL_THOR_VENDOR_NUM,

&dev->idVendor);

board/samsung/common/gadget.c new file +1 -0
+		put_unaligned(CONFIG_G_DNL_THOR_PRODUCT_NUM,

&dev->idProduct);

board/samsung/common/gadget.c new file +2 -0
+	} else if (!strcmp(name, "usb_dnl_ums")) {
+		put_unaligned(CONFIG_G_DNL_UMS_VENDOR_NUM,

&dev->idVendor);

board/samsung/common/gadget.c new file +1 -0
+		put_unaligned(CONFIG_G_DNL_UMS_PRODUCT_NUM,

&dev->idProduct);

board/samsung/common/gadget.c new file +2 -0
+	} else {
+		put_unaligned(CONFIG_G_DNL_VENDOR_NUM,

&dev->idVendor);

board/samsung/common/gadget.c new file +1 -0
+		put_unaligned(CONFIG_G_DNL_PRODUCT_NUM,

&dev->idProduct);

board/samsung/common/gadget.c new file +3 -0
+	}
+	return 0;
+}
board/samsung/common/thor.c deleted +0 -11
deleted file mode 100644
index 1c7630d..0000000
@@ -1,21 +0,0 @@
-/*
- *  Copyright (C) 2013 Samsung Electronics
- *  Lukasz Majewski <[email protected]>
- *
- * 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) -{

board/samsung/common/thor.c deleted +0 -2
-	if (!strcmp(name, "usb_dnl_thor")) {
-		put_unaligned(CONFIG_G_DNL_THOR_VENDOR_NUM,

&dev->idVendor);

board/samsung/common/thor.c deleted +0 -1
-		put_unaligned(CONFIG_G_DNL_THOR_PRODUCT_NUM,

&dev->idProduct);

board/samsung/common/thor.c deleted +0 -2
-	} else {
-		put_unaligned(CONFIG_G_DNL_VENDOR_NUM,

&dev->idVendor);

board/samsung/common/thor.c deleted +0 -1
-		put_unaligned(CONFIG_G_DNL_PRODUCT_NUM,

&dev->idProduct);

board/samsung/common/thor.c deleted +0 -3
-	}
-	return 0;
-}
(quoted diff) +0 -0

b/include/configs/exynos4-dt.h index 44e6ab4..7dac1a3 100644

include/configs/exynos4-dt.h +2 -0
@@ -105,6 +105,8 @@
 #define CONFIG_G_DNL_PRODUCT_NUM 0x6601
 #define CONFIG_G_DNL_THOR_VENDOR_NUM CONFIG_G_DNL_VENDOR_NUM
 #define CONFIG_G_DNL_THOR_PRODUCT_NUM 0x685D
+#define CONFIG_G_DNL_UMS_VENDOR_NUM 0x0525
+#define CONFIG_G_DNL_UMS_PRODUCT_NUM 0xA4A5
 #define CONFIG_G_DNL_MANUFACTURER "Samsung"
 
 /* Miscellaneous configurable options */
Signature · 5 lines
Best regards,

Lukasz Majewski

Samsung R&D Institute Poland (SRPOL) | Linux Platform Group
#2 lore raw

PATCH 1/1 samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

Dear Lukasz Majewski,

Quoted 5 lines · Lukasz Majewski

Hi Minkyu,

Quoted 3 lines

It is necessary to provide the same Vendor and Product IDs as the one in the original Linux kernel code.

Quoted 8 lines
Quoted 2 lines

Without this change the USB mass storage gadget is not working with Windows7.

Do you have any comments to this patch?

Would you consider taking this patch to u-boot-samsung tree or should I take it to u-boot-dfu since it fixes things related to UMS gadget?

How you think?
If you want to take this patch to dfu, I'm OK.
If not, please let me know. I'll take it.

Thanks,
Minkyu Kang.

#3 lore raw

PATCH 1/1 samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

Hi Minkyu,

Quoted 13 lines

Dear Lukasz Majewski,

Quoted 10 lines · Lukasz Majewski

Hi Minkyu,

Quoted 5 lines

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.

Do you have any comments to this patch?

Quoted 8 lines
Quoted 4 lines

Would you consider taking this patch to u-boot-samsung tree or should I take it to u-boot-dfu since it fixes things related to UMS gadget?

How you think?
If you want to take this patch to dfu, I'm OK.
If not, please let me know. I'll take it.

It would be best for me if I'd take it directly to u-boot-dfu tree. Please, just add Acked-by to this patch.

Quoted 3 lines

Thanks,
Minkyu Kang.

Signature · 5 lines
Best regards,

Lukasz Majewski

Samsung R&D Institute Poland (SRPOL) | Linux Platform Group
#4 lore raw

PATCH 1/1 samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

In reply to Lukasz Majewski
Quoted 6 lines · Lukasz Majewski

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.

Quoted 9 lines
---
 board/samsung/common/Makefile |  2 +-
 board/samsung/common/gadget.c | 24 ++++++++++++++++++++++++
 board/samsung/common/thor.c   | 21 ---------------------
 include/configs/exynos4-dt.h  |  2 ++
 4 files changed, 27 insertions(+), 22 deletions(-)
 create mode 100644 board/samsung/common/gadget.c
 delete mode 100644 board/samsung/common/thor.c

Thanks,
Minkyu Kang.

#5 lore raw

PATCH 1/1 samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

Hi Minkyu,

Quoted 18 lines · Lukasz Majewski
Quoted 7 lines

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.

Quoted 9 lines
---
 board/samsung/common/Makefile |  2 +-
 board/samsung/common/gadget.c | 24 ++++++++++++++++++++++++
 board/samsung/common/thor.c   | 21 ---------------------
 include/configs/exynos4-dt.h  |  2 ++
 4 files changed, 27 insertions(+), 22 deletions(-)
 create mode 100644 board/samsung/common/gadget.c
 delete mode 100644 board/samsung/common/thor.c
Quoted 1 line

Applied to u-boot-dfu tree.

Thanks!

Quoted 4 lines

Thanks,
Minkyu Kang.

Signature · 5 lines
Best regards,

Lukasz Majewski

Samsung R&D Institute Poland (SRPOL) | Linux Platform Group
#6 lore raw

PATCH 1/1 samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

In reply to Lukasz Majewski

Hi,

Quoted 7 lines · Lukasz Majewski

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.

Quoted 8 lines
---
 board/samsung/common/Makefile |  2 +-
 board/samsung/common/gadget.c | 24 ++++++++++++++++++++++++
 board/samsung/common/thor.c   | 21 ---------------------
 include/configs/exynos4-dt.h  |  2 ++
 4 files changed, 27 insertions(+), 22 deletions(-)
 create mode 100644 board/samsung/common/gadget.c
 delete mode 100644 board/samsung/common/thor.c

This patch breaks the build of the "s5p_goni" board as it also uses "board/samsung/common/gadget.c"

Best,
Vasili

#7 lore raw

PATCH 1/1 samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget

Quoted 21 lines · On Mon, 25 Aug 2014 19:12:19 +0300 Vasili Galka <[email protected]> wrote:

Hi,

Quoted 7 lines · Lukasz Majewski

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.

Quoted 8 lines
---
 board/samsung/common/Makefile |  2 +-
 board/samsung/common/gadget.c | 24 ++++++++++++++++++++++++
 board/samsung/common/thor.c   | 21 ---------------------
 include/configs/exynos4-dt.h  |  2 ++
 4 files changed, 27 insertions(+), 22 deletions(-)
 create mode 100644 board/samsung/common/gadget.c
 delete mode 100644 board/samsung/common/thor.c
Quoted 3 lines

This patch breaks the build of the "s5p_goni" board as it also uses "board/samsung/common/gadget.c"

Yes, I know.

The patch has been already prepared, sent to ML, Acked-by GONI maintainer and now I hope, that Tom will add this fix to u-boot-master repository.

Thanks for spotting, sorry for error.

Quoted 6 lines

Best,
Vasili
_______________________________________________
U-Boot mailing list
U-Boot at lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 198 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20140825/872e6eb3/attachment.pgp>