blob: 538b6d715d42662c88a8726705f655889d819358 [file] [log] [blame]
wdenk29e7f5a2004-03-12 00:14:09 +00001/*
2 * (C) Copyright 2003
3 * Gerry Hamel, geh@ti.com, Texas Instruments
4 *
Wolfgang Denk3f0137b2006-06-14 17:45:53 +02005 * (C) Copyright 2006
6 * Bryan O'Donoghue, bodonoghue@codehermit.ie, CodeHermit
7 *
Wolfgang Denkd79de1d2013-07-08 09:37:19 +02008 * SPDX-License-Identifier: GPL-2.0+
wdenk29e7f5a2004-03-12 00:14:09 +00009 */
10
11#ifndef __USB_TTY_H__
12#define __USB_TTY_H__
13
Jean-Christophe PLAGNIOL-VILLARD8f6bcf42009-04-03 12:46:58 +020014#include <usbdevice.h>
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020015#if defined(CONFIG_PPC)
Jean-Christophe PLAGNIOL-VILLARD8f6bcf42009-04-03 12:46:58 +020016#include <usb/mpc8xx_udc.h>
Marek Vasut85cc88a2011-11-26 07:20:07 +010017#elif defined(CONFIG_CPU_PXA27X)
Remy Bohmera954f1a2009-04-05 11:43:28 +020018#include <usb/pxa27x_udc.h>
Vipin KUMAR33cf5bd2012-03-06 23:39:37 +000019#elif defined(CONFIG_DW_UDC)
20#include <usb/designware_udc.h>
Marek Vasut9ba89972014-02-06 02:43:45 +010021#elif defined(CONFIG_CI_UDC)
22#include <usb/ci_udc.h>
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020023#endif
wdenk29e7f5a2004-03-12 00:14:09 +000024
Troy Kiskydf446f52013-10-10 15:28:04 -070025#include <usb/udc.h>
Simon Glass50402412011-10-10 08:55:19 +000026#include <version.h>
wdenk29e7f5a2004-03-12 00:14:09 +000027
Wolfgang Denke2601822006-06-14 18:14:56 +020028/* If no VendorID/ProductID is defined in config.h, pretend to be Linux
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020029 * DO NOT Reuse this Vendor/Product setup with protocol incompatible devices */
wdenk29e7f5a2004-03-12 00:14:09 +000030
Jean-Christophe PLAGNIOL-VILLARD6dfaee72008-12-07 09:45:35 +010031#ifndef CONFIG_USBD_VENDORID
32#define CONFIG_USBD_VENDORID 0x0525 /* Linux/NetChip */
33#endif
34#ifndef CONFIG_USBD_PRODUCTID_GSERIAL
35#define CONFIG_USBD_PRODUCTID_GSERIAL 0xa4a6 /* gserial */
36#endif
37#ifndef CONFIG_USBD_PRODUCTID_CDCACM
38#define CONFIG_USBD_PRODUCTID_CDCACM 0xa4a7 /* CDC ACM */
39#endif
40#ifndef CONFIG_USBD_MANUFACTURER
41#define CONFIG_USBD_MANUFACTURER "Das U-Boot"
42#endif
43#ifndef CONFIG_USBD_PRODUCT_NAME
44#define CONFIG_USBD_PRODUCT_NAME U_BOOT_VERSION
45#endif
wdenk29e7f5a2004-03-12 00:14:09 +000046
Jean-Christophe PLAGNIOL-VILLARD6dfaee72008-12-07 09:45:35 +010047#ifndef CONFIG_USBD_CONFIGURATION_STR
48#define CONFIG_USBD_CONFIGURATION_STR "TTY via USB"
49#endif
wdenk29e7f5a2004-03-12 00:14:09 +000050
Wolfgang Denke2601822006-06-14 18:14:56 +020051#define CONFIG_USBD_SERIAL_OUT_ENDPOINT UDC_OUT_ENDPOINT
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020052#define CONFIG_USBD_SERIAL_OUT_PKTSIZE UDC_OUT_PACKET_SIZE
53#define CONFIG_USBD_SERIAL_IN_ENDPOINT UDC_IN_ENDPOINT
54#define CONFIG_USBD_SERIAL_IN_PKTSIZE UDC_IN_PACKET_SIZE
55#define CONFIG_USBD_SERIAL_INT_ENDPOINT UDC_INT_ENDPOINT
56#define CONFIG_USBD_SERIAL_INT_PKTSIZE UDC_INT_PACKET_SIZE
57#define CONFIG_USBD_SERIAL_BULK_PKTSIZE UDC_BULK_PACKET_SIZE
wdenk29e7f5a2004-03-12 00:14:09 +000058
Vipin KUMARbdb17702012-03-26 15:38:06 +053059#if defined(CONFIG_USBD_HS)
60#define CONFIG_USBD_SERIAL_BULK_HS_PKTSIZE UDC_BULK_HS_PACKET_SIZE
61#endif
62
wdenk29e7f5a2004-03-12 00:14:09 +000063#define USBTTY_DEVICE_CLASS COMMUNICATIONS_DEVICE_CLASS
wdenk29e7f5a2004-03-12 00:14:09 +000064
Wolfgang Denka1be4762008-05-20 16:00:29 +020065#define USBTTY_BCD_DEVICE 0x00
66#define USBTTY_MAXPOWER 0x00
wdenk29e7f5a2004-03-12 00:14:09 +000067
Wolfgang Denk3f0137b2006-06-14 17:45:53 +020068#define STR_LANG 0x00
69#define STR_MANUFACTURER 0x01
70#define STR_PRODUCT 0x02
71#define STR_SERIAL 0x03
72#define STR_CONFIG 0x04
73#define STR_DATA_INTERFACE 0x05
74#define STR_CTRL_INTERFACE 0x06
75#define STR_COUNT 0x07
wdenk29e7f5a2004-03-12 00:14:09 +000076
77#endif