blob: 9487f9ec4e0cfb0bf17f1fe1b1c5c3e9811706c5 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001// SPDX-License-Identifier: GPL-2.0+
Lukasz Majewskibddf2722013-10-08 14:30:45 +02002/*
3 * Copyright (C) 2013 Samsung Electronics
4 * Lukasz Majewski <l.majewski@samsung.com>
Lukasz Majewskibddf2722013-10-08 14:30:45 +02005 */
6
7#include <common.h>
8#include <linux/usb/ch9.h>
9
Tom Rini4720d912022-12-02 16:42:28 -050010#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
Lukasz Majewskibddf2722013-10-08 14:30:45 +020016int g_dnl_bind_fixup(struct usb_device_descriptor *dev, const char *name)
17{
18 if (!strcmp(name, "usb_dnl_thor")) {
Tom Rini4720d912022-12-02 16:42:28 -050019 put_unaligned(EXYNOS_G_DNL_THOR_VENDOR_NUM, &dev->idVendor);
20 put_unaligned(EXYNOS_G_DNL_THOR_PRODUCT_NUM, &dev->idProduct);
Lukasz Majewskicb7ff442014-07-29 11:10:44 +020021 } else if (!strcmp(name, "usb_dnl_ums")) {
Tom Rini4720d912022-12-02 16:42:28 -050022 put_unaligned(EXYNOS_G_DNL_UMS_VENDOR_NUM, &dev->idVendor);
23 put_unaligned(EXYNOS_G_DNL_UMS_PRODUCT_NUM, &dev->idProduct);
Lukasz Majewskibddf2722013-10-08 14:30:45 +020024 } else {
Maxime Ripard7f78b9d2017-09-07 08:58:08 +020025 put_unaligned(CONFIG_USB_GADGET_VENDOR_NUM, &dev->idVendor);
26 put_unaligned(CONFIG_USB_GADGET_PRODUCT_NUM, &dev->idProduct);
Lukasz Majewskibddf2722013-10-08 14:30:45 +020027 }
28 return 0;
29}