|
@@ -609,107 +609,6 @@ void fusb300_rdcxf(struct fusb300 *fusb300,
|
|
|
}
|
|
|
}
|
|
|
|
|
|
-#if 0
|
|
|
-static void fusb300_dbg_fifo(struct fusb300_ep *ep,
|
|
|
- u8 entry, u16 length)
|
|
|
-{
|
|
|
- u32 reg;
|
|
|
- u32 i = 0;
|
|
|
- u32 j = 0;
|
|
|
-
|
|
|
- reg = ioread32(ep->fusb300->reg + FUSB300_OFFSET_GTM);
|
|
|
- reg &= ~(FUSB300_GTM_TST_EP_ENTRY(0xF) |
|
|
|
- FUSB300_GTM_TST_EP_NUM(0xF) | FUSB300_GTM_TST_FIFO_DEG);
|
|
|
- reg |= (FUSB300_GTM_TST_EP_ENTRY(entry) |
|
|
|
- FUSB300_GTM_TST_EP_NUM(ep->epnum) | FUSB300_GTM_TST_FIFO_DEG);
|
|
|
- iowrite32(reg, ep->fusb300->reg + FUSB300_OFFSET_GTM);
|
|
|
-
|
|
|
- for (i = 0; i < (length >> 2); i++) {
|
|
|
- if (i * 4 == 1024)
|
|
|
- break;
|
|
|
- reg = ioread32(ep->fusb300->reg +
|
|
|
- FUSB300_OFFSET_BUFDBG_START + i * 4);
|
|
|
- printk(KERN_DEBUG" 0x%-8x", reg);
|
|
|
- j++;
|
|
|
- if ((j % 4) == 0)
|
|
|
- printk(KERN_DEBUG "\n");
|
|
|
- }
|
|
|
-
|
|
|
- if (length % 4) {
|
|
|
- reg = ioread32(ep->fusb300->reg +
|
|
|
- FUSB300_OFFSET_BUFDBG_START + i * 4);
|
|
|
- printk(KERN_DEBUG " 0x%x\n", reg);
|
|
|
- }
|
|
|
-
|
|
|
- if ((j % 4) != 0)
|
|
|
- printk(KERN_DEBUG "\n");
|
|
|
-
|
|
|
- fusb300_disable_bit(ep->fusb300, FUSB300_OFFSET_GTM,
|
|
|
- FUSB300_GTM_TST_FIFO_DEG);
|
|
|
-}
|
|
|
-
|
|
|
-static void fusb300_cmp_dbg_fifo(struct fusb300_ep *ep,
|
|
|
- u8 entry, u16 length, u8 *golden)
|
|
|
-{
|
|
|
- u32 reg;
|
|
|
- u32 i = 0;
|
|
|
- u32 golden_value;
|
|
|
- u8 *tmp;
|
|
|
-
|
|
|
- tmp = golden;
|
|
|
-
|
|
|
- printk(KERN_DEBUG "fusb300_cmp_dbg_fifo (entry %d) : start\n", entry);
|
|
|
-
|
|
|
- reg = ioread32(ep->fusb300->reg + FUSB300_OFFSET_GTM);
|
|
|
- reg &= ~(FUSB300_GTM_TST_EP_ENTRY(0xF) |
|
|
|
- FUSB300_GTM_TST_EP_NUM(0xF) | FUSB300_GTM_TST_FIFO_DEG);
|
|
|
- reg |= (FUSB300_GTM_TST_EP_ENTRY(entry) |
|
|
|
- FUSB300_GTM_TST_EP_NUM(ep->epnum) | FUSB300_GTM_TST_FIFO_DEG);
|
|
|
- iowrite32(reg, ep->fusb300->reg + FUSB300_OFFSET_GTM);
|
|
|
-
|
|
|
- for (i = 0; i < (length >> 2); i++) {
|
|
|
- if (i * 4 == 1024)
|
|
|
- break;
|
|
|
- golden_value = *tmp | *(tmp + 1) << 8 |
|
|
|
- *(tmp + 2) << 16 | *(tmp + 3) << 24;
|
|
|
-
|
|
|
- reg = ioread32(ep->fusb300->reg +
|
|
|
- FUSB300_OFFSET_BUFDBG_START + i*4);
|
|
|
-
|
|
|
- if (reg != golden_value) {
|
|
|
- printk(KERN_DEBUG "0x%x : ", (u32)(ep->fusb300->reg +
|
|
|
- FUSB300_OFFSET_BUFDBG_START + i*4));
|
|
|
- printk(KERN_DEBUG " golden = 0x%x, reg = 0x%x\n",
|
|
|
- golden_value, reg);
|
|
|
- }
|
|
|
- tmp += 4;
|
|
|
- }
|
|
|
-
|
|
|
- switch (length % 4) {
|
|
|
- case 1:
|
|
|
- golden_value = *tmp;
|
|
|
- case 2:
|
|
|
- golden_value = *tmp | *(tmp + 1) << 8;
|
|
|
- case 3:
|
|
|
- golden_value = *tmp | *(tmp + 1) << 8 | *(tmp + 2) << 16;
|
|
|
- default:
|
|
|
- break;
|
|
|
-
|
|
|
- reg = ioread32(ep->fusb300->reg + FUSB300_OFFSET_BUFDBG_START + i*4);
|
|
|
- if (reg != golden_value) {
|
|
|
- printk(KERN_DEBUG "0x%x:", (u32)(ep->fusb300->reg +
|
|
|
- FUSB300_OFFSET_BUFDBG_START + i*4));
|
|
|
- printk(KERN_DEBUG " golden = 0x%x, reg = 0x%x\n",
|
|
|
- golden_value, reg);
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- printk(KERN_DEBUG "fusb300_cmp_dbg_fifo : end\n");
|
|
|
- fusb300_disable_bit(ep->fusb300, FUSB300_OFFSET_GTM,
|
|
|
- FUSB300_GTM_TST_FIFO_DEG);
|
|
|
-}
|
|
|
-#endif
|
|
|
-
|
|
|
static void fusb300_rdfifo(struct fusb300_ep *ep,
|
|
|
struct fusb300_request *req,
|
|
|
u32 length)
|