]> git.dujemihanovic.xyz Git - u-boot.git/commitdiff
OMAP3 zoom2 Use usbtty if the debug board is not connected.
authorTom Rix <Tom.Rix@windriver.com>
Sat, 31 Oct 2009 17:37:45 +0000 (12:37 -0500)
committerRemy Bohmer <linux@bohmer.net>
Sun, 20 Dec 2009 11:51:51 +0000 (12:51 +0100)
The preferred serial output comes from the debug board.
When the debug board is disconnected, fall back on using
usbtty from the usb connector on the Zoom2 board.

This shows up as /dev/ttyACM0 in a linux host.

Signed-off-by: Tom Rix <Tom.Rix@windriver.com>
board/logicpd/zoom2/zoom2_serial.c
include/configs/omap3_zoom2.h
include/serial.h

index a3d777dfaddc7b16f23ea8c25e15ce8f2bc62fc2..ba58e39346fdfbeca12d3122b520583658259d03 100644 (file)
@@ -86,6 +86,8 @@ void quad_putc_dev (unsigned long base, const char c)
                        quad_putc_dev (base, '\r');
 
                NS16550_putc ((NS16550_t) base, c);
+       } else {
+               usbtty_putc(c);
        }
 }
 
@@ -94,6 +96,8 @@ void quad_puts_dev (unsigned long base, const char *s)
        if (zoom2_debug_board_connected ()) {
                while ((s != NULL) && (*s != '\0'))
                        quad_putc_dev (base, *s++);
+       } else {
+               usbtty_puts(s);
        }
 }
 
@@ -101,16 +105,16 @@ int quad_getc_dev (unsigned long base)
 {
        if (zoom2_debug_board_connected ())
                return NS16550_getc ((NS16550_t) base);
-       else
-               return 0;
+
+       return usbtty_getc();
 }
 
 int quad_tstc_dev (unsigned long base)
 {
        if (zoom2_debug_board_connected ())
                return NS16550_tstc ((NS16550_t) base);
-       else
-               return 0;
+
+       return usbtty_tstc();
 }
 
 void quad_setbrg_dev (unsigned long base)
index 2b076666e962bc1ed1848faa8f146ad7720e19d2..7a8beb8505d1d966426d110eeed438c1525b81f1 100644 (file)
 #define CONFIG_OMAP3_GPIO_3 /* board revision */
 #define CONFIG_OMAP3_GPIO_5 /* debug board detection, ZOOM2_LED_BLUE */
 
+/* USB */
+#define CONFIG_MUSB_UDC                        1
+#define CONFIG_USB_OMAP3               1
+#define CONFIG_TWL4030_USB             1
+
+/* USB device configuration */
+#define CONFIG_USB_DEVICE              1
+#define CONFIG_USB_TTY                 1
+/* Change these to suit your needs */
+#define CONFIG_USBD_VENDORID           0x0451
+#define CONFIG_USBD_PRODUCTID          0x5678
+#define CONFIG_USBD_MANUFACTURER       "Texas Instruments"
+#define CONFIG_USBD_PRODUCT_NAME       "Zoom2"
+
 /* commands to include */
 #include <config_cmd_default.h>
 
 /* Environment information */
 #define CONFIG_BOOTDELAY               10
 
+#define CONFIG_EXTRA_ENV_SETTINGS \
+       "usbtty=cdc_acm\0" \
+
 /*
  * Miscellaneous configurable options
  */
index 43451a30195753231649214018ddb46288890941..f2638ec5667df90efd08f4610e5d2efd0ba50c8d 100644 (file)
@@ -67,9 +67,21 @@ extern int serial_assign(char * name);
 extern void serial_reinit_all(void);
 
 /* For usbtty */
+#ifdef CONFIG_USB_TTY
+
 extern int usbtty_getc(void);
 extern void usbtty_putc(const char c);
 extern void usbtty_puts(const char *str);
 extern int usbtty_tstc(void);
 
+#else
+
+/* stubs */
+#define usbtty_getc() 0
+#define usbtty_putc(a)
+#define usbtty_puts(a)
+#define usbtty_tstc() 0
+
+#endif /* CONFIG_USB_TTY */
+
 #endif