3 #include "reg_defs.h"
\r
7 #include <Magpie_api.h>
\r
8 #include <vdesc_api.h>
\r
9 #include <adf_os_mem.h>
\r
10 #include <adf_os_io.h>
\r
12 #include "hif_usb.h"
\r
15 * -- support more than 64 bytes command on ep4 --
\r
17 int _HIFusb_get_max_msg_len_patch(hif_handle_t handle, int pipe)
\r
20 case HIF_USB_PIPE_INTERRUPT:
\r
21 case HIF_USB_PIPE_COMMAND:
\r
30 * -- move the usb_task to here --
\r
32 void _HIFusb_isr_handler_patch(hif_handle_t h)
\r
36 _HIFusb_isr_handler();
\r
41 * -- reset usb dma --
\r
43 * - make sure DMA_START bit0 is zero
\r
44 * - update DMA_START bit4 to 1
\r
45 * - update DESC_START_ADDR
\r
46 * - update DMA_START bit 0
\r
48 void _HIFusb_start_patch(hif_handle_t handle)
\r
50 MAGPIE_REG_USB_TX0_DMA_START = 0x0;
\r
51 MAGPIE_REG_USB_RX0_DMA_START = 0x0;
\r
52 MAGPIE_REG_USB_RX1_DMA_START = 0x0;
\r
53 MAGPIE_REG_USB_RX2_DMA_START = 0x0;
\r
57 if(!MAGPIE_REG_USB_TX0_DMA_START &&
\r
58 !MAGPIE_REG_USB_RX0_DMA_START &&
\r
59 !MAGPIE_REG_USB_RX1_DMA_START &&
\r
60 !MAGPIE_REG_USB_RX2_DMA_START )
\r
62 MAGPIE_REG_USB_TX0_DMA_START = MAGPIE_REG_USB_TX0_DMA_START|BIT4;
\r
63 MAGPIE_REG_USB_RX0_DMA_START = MAGPIE_REG_USB_RX0_DMA_START|BIT4;
\r
64 MAGPIE_REG_USB_RX1_DMA_START = MAGPIE_REG_USB_RX1_DMA_START|BIT4;
\r
65 MAGPIE_REG_USB_RX2_DMA_START = MAGPIE_REG_USB_RX2_DMA_START|BIT4;
\r