From patchwork Tue Jul 29 09:10:44 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?=C5=81ukasz_Majewski?= X-Patchwork-Id: 374377 X-Patchwork-Delegate: marek.vasut@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id BAD1214019B for ; Tue, 29 Jul 2014 19:11:15 +1000 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 131E14A02C; Tue, 29 Jul 2014 11:11:13 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Rzwwhgco9VO9; Tue, 29 Jul 2014 11:11:12 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id DDB6B4A033; Tue, 29 Jul 2014 11:11:08 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 86AD94A033 for ; Tue, 29 Jul 2014 11:11:05 +0200 (CEST) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 6yDyW9RuBS6D for ; Tue, 29 Jul 2014 11:11:02 +0200 (CEST) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mailout3.samsung.com (mailout3.samsung.com [203.254.224.33]) by theia.denx.de (Postfix) with ESMTPS id 676894A02C for ; Tue, 29 Jul 2014 11:10:59 +0200 (CEST) Received: from epcpsbgm2.samsung.com (epcpsbgm2 [203.254.230.27]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0N9G00LI3UU6M7C0@mailout3.samsung.com> for u-boot@lists.denx.de; Tue, 29 Jul 2014 18:10:54 +0900 (KST) X-AuditID: cbfee61b-f79f86d00000144c-55-53d7651ecfce Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id 27.EC.05196.E1567D35; Tue, 29 Jul 2014 18:10:54 +0900 (KST) Received: from mcdsrvbld02.digital.local ([106.116.37.23]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0N9G00HGSUTYAJ80@mmp1.samsung.com>; Tue, 29 Jul 2014 18:10:54 +0900 (KST) From: Lukasz Majewski To: u-boot@lists.denx.de, Minkyu Kang Date: Tue, 29 Jul 2014 11:10:44 +0200 Message-id: <1406625044-11637-1-git-send-email-l.majewski@samsung.com> X-Mailer: git-send-email 1.7.10.4 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFnrCJMWRmVeSWpSXmKPExsVy+t9jAV251OvBBp+uKFm8ecRt8ebhZkaL jiMtjBY7Lt9gsXi7t5PdgdXj7J0djB7rpr1l9ujbsooxgDmKyyYlNSezLLVI3y6BK+Pr3MqC aVIVvev3szcwnhbrYuTkkBAwkVi/5RULhC0mceHeejYQW0hgEaPEmtN2XYxcQHYXk0Tn+ifs IAk2AT2Jz3efMnUxcnCICNhI7J3gChJmFmhhlFj6MBskLCwQJnGmlQskzCKgKnH0+l6wkbwC bhIdizewQqxSlOh+NoFtAiP3AkaGVYyiqQXJBcVJ6blGesWJucWleel6yfm5mxjBfn8mvYNx VYPFIUYBDkYlHt4Nc68FC7EmlhVX5h5ilOBgVhLhFQi8HizEm5JYWZValB9fVJqTWnyIUZqD RUmc92CrdaCQQHpiSWp2ampBahFMlomDU6qBUWfrmZSmzBQe7+M6EsarvMSzI63CZz1+/qN4 5aeDT9RlY0Tftr8+4hgWu36KqE9+6vOvNgfmKx7IYXVum9YVseD6b+uV86XnXso9NN3vlU7I uvzWY4vvft6xNuyS17aFcpx1U1SK7nrJc/f9tVuU6q+2ZbXi6Z0BZ4w2qP3b8adHZOtnv/gm OSWW4oxEQy3mouJEAJw2bnH3AQAA Cc: Przemyslaw Marczak Subject: [U-Boot] [PATCH] samsung: dfu: Provide correct Vendor and Product IDs for UMS gadget X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de 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 Acked-by: Minkyu Kang --- 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 diff --git a/board/samsung/common/Makefile b/board/samsung/common/Makefile index 41d0cc3..93347ef 100644 --- a/board/samsung/common/Makefile +++ b/board/samsung/common/Makefile @@ -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 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 + * + * SPDX-License-Identifier: GPL-2.0+ + */ + +#include +#include + +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; +} diff --git a/board/samsung/common/thor.c b/board/samsung/common/thor.c deleted file mode 100644 index 1c7630d..0000000 --- a/board/samsung/common/thor.c +++ /dev/null @@ -1,21 +0,0 @@ -/* - * Copyright (C) 2013 Samsung Electronics - * Lukasz Majewski - * - * SPDX-License-Identifier: GPL-2.0+ - */ - -#include -#include - -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; -} diff --git a/include/configs/exynos4-dt.h b/include/configs/exynos4-dt.h index 44e6ab4..7dac1a3 100644 --- a/include/configs/exynos4-dt.h +++ b/include/configs/exynos4-dt.h @@ -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 */