blob: e27aa368c9af88267874974cda77ad1ec542145f [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
wdenk29e7f5a2004-03-12 00:14:09 +00002/*
3 * (C) Copyright 2003
4 * Gerry Hamel, geh@ti.com, Texas Instruments
5 *
Wolfgang Denk3f0137b2006-06-14 17:45:53 +02006 * (C) Copyright 2006
7 * Bryan O'Donoghue, bodonoghue@codehermit.ie, CodeHermit
wdenk29e7f5a2004-03-12 00:14:09 +00008 */
9
10#ifndef __USB_TTY_H__
11#define __USB_TTY_H__
12
Jean-Christophe PLAGNIOL-VILLARD8f6bcf42009-04-03 12:46:58 +020013#include <usbdevice.h>
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020014#if defined(CONFIG_PPC)
Jean-Christophe PLAGNIOL-VILLARD8f6bcf42009-04-03 12:46:58 +020015#include <usb/mpc8xx_udc.h>
Marek Vasut9ba89972014-02-06 02:43:45 +010016#elif defined(CONFIG_CI_UDC)
17#include <usb/ci_udc.h>
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020018#endif
wdenk29e7f5a2004-03-12 00:14:09 +000019
Troy Kiskydf446f52013-10-10 15:28:04 -070020#include <usb/udc.h>
Simon Glass50402412011-10-10 08:55:19 +000021#include <version.h>
wdenk29e7f5a2004-03-12 00:14:09 +000022
Wolfgang Denke2601822006-06-14 18:14:56 +020023/* If no VendorID/ProductID is defined in config.h, pretend to be Linux
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020024 * DO NOT Reuse this Vendor/Product setup with protocol incompatible devices */
wdenk29e7f5a2004-03-12 00:14:09 +000025
Jean-Christophe PLAGNIOL-VILLARD6dfaee72008-12-07 09:45:35 +010026#ifndef CONFIG_USBD_VENDORID
27#define CONFIG_USBD_VENDORID 0x0525 /* Linux/NetChip */
28#endif
29#ifndef CONFIG_USBD_PRODUCTID_GSERIAL
30#define CONFIG_USBD_PRODUCTID_GSERIAL 0xa4a6 /* gserial */
31#endif
32#ifndef CONFIG_USBD_PRODUCTID_CDCACM
33#define CONFIG_USBD_PRODUCTID_CDCACM 0xa4a7 /* CDC ACM */
34#endif
35#ifndef CONFIG_USBD_MANUFACTURER
36#define CONFIG_USBD_MANUFACTURER "Das U-Boot"
37#endif
38#ifndef CONFIG_USBD_PRODUCT_NAME
39#define CONFIG_USBD_PRODUCT_NAME U_BOOT_VERSION
40#endif
wdenk29e7f5a2004-03-12 00:14:09 +000041
Jean-Christophe PLAGNIOL-VILLARD6dfaee72008-12-07 09:45:35 +010042#ifndef CONFIG_USBD_CONFIGURATION_STR
43#define CONFIG_USBD_CONFIGURATION_STR "TTY via USB"
44#endif
wdenk29e7f5a2004-03-12 00:14:09 +000045
Wolfgang Denke2601822006-06-14 18:14:56 +020046#define CONFIG_USBD_SERIAL_OUT_ENDPOINT UDC_OUT_ENDPOINT
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020047#define CONFIG_USBD_SERIAL_OUT_PKTSIZE UDC_OUT_PACKET_SIZE
48#define CONFIG_USBD_SERIAL_IN_ENDPOINT UDC_IN_ENDPOINT
49#define CONFIG_USBD_SERIAL_IN_PKTSIZE UDC_IN_PACKET_SIZE
50#define CONFIG_USBD_SERIAL_INT_ENDPOINT UDC_INT_ENDPOINT
51#define CONFIG_USBD_SERIAL_INT_PKTSIZE UDC_INT_PACKET_SIZE
52#define CONFIG_USBD_SERIAL_BULK_PKTSIZE UDC_BULK_PACKET_SIZE
wdenk29e7f5a2004-03-12 00:14:09 +000053
Vipin KUMARbdb17702012-03-26 15:38:06 +053054#if defined(CONFIG_USBD_HS)
55#define CONFIG_USBD_SERIAL_BULK_HS_PKTSIZE UDC_BULK_HS_PACKET_SIZE
56#endif
57
wdenk29e7f5a2004-03-12 00:14:09 +000058#define USBTTY_DEVICE_CLASS COMMUNICATIONS_DEVICE_CLASS
wdenk29e7f5a2004-03-12 00:14:09 +000059
Wolfgang Denka1be4762008-05-20 16:00:29 +020060#define USBTTY_BCD_DEVICE 0x00
61#define USBTTY_MAXPOWER 0x00
wdenk29e7f5a2004-03-12 00:14:09 +000062
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020063#define STR_LANG 0x00
64#define STR_MANUFACTURER 0x01
65#define STR_PRODUCT 0x02
66#define STR_SERIAL 0x03
67#define STR_CONFIG 0x04
68#define STR_DATA_INTERFACE 0x05
69#define STR_CTRL_INTERFACE 0x06
70#define STR_COUNT 0x07
wdenk29e7f5a2004-03-12 00:14:09 +000071
72#endif