Commit fdcfaa1b authored by Zhang Wei's avatar Zhang Wei Committed by Markus Klotzbuecher

USB event poll support

This patch adds USB event poll support, which could be used in usbkbd
and other usb devices driver when the asynchronous interrupt
processing is supported.

Signed-off-by: Zhang Wei <wei.zhang@freescale.com
parent 9a1d00fa
......@@ -901,6 +901,9 @@ The following options need to be configured:
CONFIG_USB_CONFIG
for differential drivers: 0x00001000
for single ended drivers: 0x00005000
CFG_USB_EVENT_POLL
May be defined to allow interrupt polling
instead of using asynchronous interrupts
- USB Device:
Define the below if you wish to use the USB console.
......
......@@ -129,7 +129,11 @@ static int usb_kbd_testc(void)
static int usb_kbd_getc(void)
{
char c;
while(usb_in_pointer==usb_out_pointer);
while(usb_in_pointer==usb_out_pointer) {
#ifdef CFG_USB_EVENT_POLL
usb_event_poll();
#endif
}
if((usb_out_pointer+1)==USB_KBD_BUFFER_LEN)
usb_out_pointer=0;
else
......
......@@ -180,6 +180,7 @@ int submit_control_msg(struct usb_device *dev, unsigned long pipe, void *buffer,
int transfer_len,struct devrequest *setup);
int submit_int_msg(struct usb_device *dev, unsigned long pipe, void *buffer,
int transfer_len, int interval);
void usb_event_poll(void);
/* Defines */
#define USB_UHCI_VEND_ID 0x8086
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment