altos/kernel: Define usb IN2/IN3 functions
authorKeith Packard <keithp@keithp.com>
Mon, 7 May 2018 04:06:31 +0000 (21:06 -0700)
committerKeith Packard <keithp@keithp.com>
Mon, 7 May 2018 16:21:56 +0000 (09:21 -0700)
These are putchar and flush functions that are used when sending data
to the additional IN2 and IN3 endpoints.

Signed-off-by: Keith Packard <keithp@keithp.com>
src/kernel/ao_usb.h

index 936d939bdd4fde1e92ae90ad9a499ae7457a3975..40516de10340ffa439f606a2292e776c25ca0d55 100644 (file)
@@ -41,7 +41,23 @@ ao_usb_pollchar(void);
 void
 ao_usb_flush(void);
 
+#if AO_USB_HAS_IN2
+void
+ao_usb_flush2(void);
+
+void
+ao_usb_putchar2(char c);
+#endif
+
+#if AO_USB_HAS_IN3
+void
+ao_usb_flush3(void);
+
+void
+ao_usb_putchar3(char c);
+#endif
 /* Enable the USB controller */
+
 void
 ao_usb_enable(void);
 
@@ -107,6 +123,7 @@ extern __code __at (0x00aa) uint8_t ao_usb_descriptors [];
 #define AO_USB_OUT_EP          4
 #define AO_USB_IN_EP           5
 #define AO_USB_IN2_EP          6
+#define AO_USB_IN3_EP          7
 #endif
 
 #ifndef AO_USB_HAS_OUT
@@ -125,6 +142,10 @@ extern __code __at (0x00aa) uint8_t ao_usb_descriptors [];
 #define AO_USB_HAS_IN2 0
 #endif
 
+#ifndef AO_USB_HAS_IN3
+#define AO_USB_HAS_IN3 0
+#endif
+
 /*
  * USB bulk packets can only come in 8, 16, 32 and 64
  * byte sizes, so we'll use 64 for everything