/linux-4.1.27/drivers/usb/dwc2/ |
H A D | core.c | 720 u32 hcchar; dwc2_core_host_init() local 725 hcchar = readl(hsotg->regs + HCCHAR(i)); dwc2_core_host_init() 726 hcchar &= ~HCCHAR_CHENA; dwc2_core_host_init() 727 hcchar |= HCCHAR_CHDIS; dwc2_core_host_init() 728 hcchar &= ~HCCHAR_EPDIR; dwc2_core_host_init() 729 writel(hcchar, hsotg->regs + HCCHAR(i)); dwc2_core_host_init() 736 hcchar = readl(hsotg->regs + HCCHAR(i)); dwc2_core_host_init() 737 hcchar |= HCCHAR_CHENA | HCCHAR_CHDIS; dwc2_core_host_init() 738 hcchar &= ~HCCHAR_EPDIR; dwc2_core_host_init() 739 writel(hcchar, hsotg->regs + HCCHAR(i)); dwc2_core_host_init() 743 hcchar = readl(hsotg->regs + HCCHAR(i)); dwc2_core_host_init() 751 } while (hcchar & HCCHAR_CHENA); dwc2_core_host_init() 931 u32 hcchar; dwc2_hc_init() local 949 hcchar = chan->dev_addr << HCCHAR_DEVADDR_SHIFT & HCCHAR_DEVADDR_MASK; dwc2_hc_init() 950 hcchar |= chan->ep_num << HCCHAR_EPNUM_SHIFT & HCCHAR_EPNUM_MASK; dwc2_hc_init() 952 hcchar |= HCCHAR_EPDIR; dwc2_hc_init() 954 hcchar |= HCCHAR_LSPDDEV; dwc2_hc_init() 955 hcchar |= chan->ep_type << HCCHAR_EPTYPE_SHIFT & HCCHAR_EPTYPE_MASK; dwc2_hc_init() 956 hcchar |= chan->max_packet << HCCHAR_MPS_SHIFT & HCCHAR_MPS_MASK; dwc2_hc_init() 957 writel(hcchar, hsotg->regs + HCCHAR(hc_num)); dwc2_hc_init() 960 hc_num, hcchar); dwc2_hc_init() 1045 u32 nptxsts, hptxsts, hcchar; dwc2_hc_halt() local 1079 hcchar = readl(hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_halt() 1080 if (!(hcchar & HCCHAR_CHENA)) { dwc2_hc_halt() 1107 hcchar = readl(hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_halt() 1114 hcchar |= HCCHAR_CHENA; dwc2_hc_halt() 1119 hcchar |= HCCHAR_CHDIS; dwc2_hc_halt() 1124 hcchar |= HCCHAR_CHENA; dwc2_hc_halt() 1133 hcchar &= ~HCCHAR_CHENA; dwc2_hc_halt() 1143 hcchar &= ~HCCHAR_CHENA; dwc2_hc_halt() 1151 writel(hcchar, hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_halt() 1154 if (hcchar & HCCHAR_CHENA) { dwc2_hc_halt() 1168 dev_vdbg(hsotg->dev, " hcchar: 0x%08x\n", dwc2_hc_halt() 1169 hcchar); dwc2_hc_halt() 1210 * @hcchar: Current value of the HCCHAR register for the specified host channel 1215 struct dwc2_host_chan *chan, u32 *hcchar) dwc2_hc_set_even_odd_frame() 1221 *hcchar |= HCCHAR_ODDFRM; dwc2_hc_set_even_odd_frame() 1339 u32 hcchar; dwc2_hc_start_transfer() local 1488 hcchar = readl(hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_start_transfer() 1489 hcchar &= ~HCCHAR_MULTICNT_MASK; dwc2_hc_start_transfer() 1490 hcchar |= chan->multi_count << HCCHAR_MULTICNT_SHIFT & dwc2_hc_start_transfer() 1492 dwc2_hc_set_even_odd_frame(hsotg, chan, &hcchar); dwc2_hc_start_transfer() 1494 if (hcchar & HCCHAR_CHDIS) dwc2_hc_start_transfer() 1496 "%s: chdis set, channel %d, hcchar 0x%08x\n", dwc2_hc_start_transfer() 1497 __func__, chan->hc_num, hcchar); dwc2_hc_start_transfer() 1500 hcchar |= HCCHAR_CHENA; dwc2_hc_start_transfer() 1501 hcchar &= ~HCCHAR_CHDIS; dwc2_hc_start_transfer() 1505 (hcchar & HCCHAR_MULTICNT_MASK) >> dwc2_hc_start_transfer() 1508 writel(hcchar, hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_start_transfer() 1510 dev_vdbg(hsotg->dev, "Wrote %08x to HCCHAR(%d)\n", hcchar, dwc2_hc_start_transfer() 1539 u32 hcchar; dwc2_hc_start_transfer_ddma() local 1578 hcchar = readl(hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_start_transfer_ddma() 1579 hcchar &= ~HCCHAR_MULTICNT_MASK; dwc2_hc_start_transfer_ddma() 1580 hcchar |= chan->multi_count << HCCHAR_MULTICNT_SHIFT & dwc2_hc_start_transfer_ddma() 1583 if (hcchar & HCCHAR_CHDIS) dwc2_hc_start_transfer_ddma() 1585 "%s: chdis set, channel %d, hcchar 0x%08x\n", dwc2_hc_start_transfer_ddma() 1586 __func__, chan->hc_num, hcchar); dwc2_hc_start_transfer_ddma() 1589 hcchar |= HCCHAR_CHENA; dwc2_hc_start_transfer_ddma() 1590 hcchar &= ~HCCHAR_CHDIS; dwc2_hc_start_transfer_ddma() 1594 (hcchar & HCCHAR_MULTICNT_MASK) >> dwc2_hc_start_transfer_ddma() 1597 writel(hcchar, hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_start_transfer_ddma() 1599 dev_vdbg(hsotg->dev, "Wrote %08x to HCCHAR(%d)\n", hcchar, dwc2_hc_start_transfer_ddma() 1654 u32 hcchar = readl(hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_continue_transfer() local 1656 dwc2_hc_set_even_odd_frame(hsotg, chan, &hcchar); dwc2_hc_continue_transfer() 1657 hcchar |= HCCHAR_CHENA; dwc2_hc_continue_transfer() 1658 hcchar &= ~HCCHAR_CHDIS; dwc2_hc_continue_transfer() 1660 dev_vdbg(hsotg->dev, " IN xfer: hcchar = 0x%08x\n", dwc2_hc_continue_transfer() 1661 hcchar); dwc2_hc_continue_transfer() 1662 writel(hcchar, hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_continue_transfer() 1672 u32 hcchar = readl(hsotg->regs + dwc2_hc_continue_transfer() local 1676 &hcchar); dwc2_hc_continue_transfer() 1699 u32 hcchar; dwc2_hc_do_ping() local 1711 hcchar = readl(hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_do_ping() 1712 hcchar |= HCCHAR_CHENA; dwc2_hc_do_ping() 1713 hcchar &= ~HCCHAR_CHDIS; dwc2_hc_do_ping() 1714 writel(hcchar, hsotg->regs + HCCHAR(chan->hc_num)); dwc2_hc_do_ping() 1214 dwc2_hc_set_even_odd_frame(struct dwc2_hsotg *hsotg, struct dwc2_host_chan *chan, u32 *hcchar) dwc2_hc_set_even_odd_frame() argument
|
H A D | hcd_intr.c | 1459 u32 hcchar; dwc2_hc_ahberr_intr() local 1472 hcchar = readl(hsotg->regs + HCCHAR(chnum)); dwc2_hc_ahberr_intr() 1478 dev_err(hsotg->dev, " hcchar 0x%08x, hcsplt 0x%08x\n", hcchar, hcsplt); dwc2_hc_ahberr_intr() 1678 u32 hcchar; dwc2_halt_status_ok() local 1688 hcchar = readl(hsotg->regs + HCCHAR(chnum)); dwc2_halt_status_ok() 1696 "channel %d, hcchar 0x%08x, hctsiz 0x%08x,\n", dwc2_halt_status_ok() 1697 chnum, hcchar, hctsiz); dwc2_halt_status_ok() 1711 * This code is here only as a check. hcchar.chdis should never be set dwc2_halt_status_ok() 1715 hcchar = readl(hsotg->regs + HCCHAR(chnum)); dwc2_halt_status_ok() 1716 if (hcchar & HCCHAR_CHDIS) { dwc2_halt_status_ok() 1718 "%s: hcchar.chdis set unexpectedly, hcchar 0x%08x, trying to halt again\n", dwc2_halt_status_ok() 1719 __func__, hcchar); dwc2_halt_status_ok()
|
H A D | hcd.c | 74 u32 hcchar; dwc2_dump_channel_info() local 83 hcchar = readl(hsotg->regs + HCCHAR(chan->hc_num)); dwc2_dump_channel_info() 89 dev_dbg(hsotg->dev, " hcchar 0x%08x, hcsplt 0x%08x\n", dwc2_dump_channel_info() 90 hcchar, hcsplt); dwc2_dump_channel_info() 222 u32 hcchar; dwc2_hcd_cleanup_channels() local 231 hcchar = readl(hsotg->regs + HCCHAR(i)); dwc2_hcd_cleanup_channels() 232 if (hcchar & HCCHAR_CHENA) { dwc2_hcd_cleanup_channels() 233 hcchar &= ~(HCCHAR_CHENA | HCCHAR_EPDIR); dwc2_hcd_cleanup_channels() 234 hcchar |= HCCHAR_CHDIS; dwc2_hcd_cleanup_channels() 235 writel(hcchar, hsotg->regs + HCCHAR(i)); dwc2_hcd_cleanup_channels() 244 hcchar = readl(hsotg->regs + HCCHAR(i)); dwc2_hcd_cleanup_channels() 245 if (hcchar & HCCHAR_CHENA) { dwc2_hcd_cleanup_channels() 247 hcchar |= HCCHAR_CHDIS; dwc2_hcd_cleanup_channels() 248 writel(hcchar, hsotg->regs + HCCHAR(i)); dwc2_hcd_cleanup_channels() 1932 u32 hfnum, hcchar, hctsiz, hcint, hcintmsk; dwc2_hcd_dump_state() local 1935 hcchar = readl(hsotg->regs + HCCHAR(i)); dwc2_hcd_dump_state() 1940 dev_dbg(hsotg->dev, " hcchar: 0x%08x\n", hcchar); dwc2_hcd_dump_state()
|
/linux-4.1.27/drivers/staging/octeon-usb/ |
H A D | octeon-hcd.c | 1318 union cvmx_usbcx_hccharx hcchar; cvmx_usb_fill_tx_fifo() local 1324 hcchar.u32 = cvmx_usb_read_csr32(usb, cvmx_usb_fill_tx_fifo() 1326 if (hcchar.s.epdir != CVMX_USB_DIRECTION_OUT) cvmx_usb_fill_tx_fifo() 1344 if ((hcchar.s.eptype == CVMX_USB_TRANSFER_INTERRUPT) || cvmx_usb_fill_tx_fifo() 1345 (hcchar.s.eptype == CVMX_USB_TRANSFER_ISOCHRONOUS)) cvmx_usb_fill_tx_fifo()
|