Lines Matching refs:csr
114 u16 csr; in musb_h_tx_flush_fifo() local
118 csr = musb_readw(epio, MUSB_TXCSR); in musb_h_tx_flush_fifo()
119 while (csr & MUSB_TXCSR_FIFONOTEMPTY) { in musb_h_tx_flush_fifo()
120 if (csr != lastcsr) in musb_h_tx_flush_fifo()
121 dev_dbg(musb->controller, "Host TX FIFONOTEMPTY csr: %02x\n", csr); in musb_h_tx_flush_fifo()
122 lastcsr = csr; in musb_h_tx_flush_fifo()
123 csr |= MUSB_TXCSR_FLUSHFIFO | MUSB_TXCSR_TXPKTRDY; in musb_h_tx_flush_fifo()
124 musb_writew(epio, MUSB_TXCSR, csr); in musb_h_tx_flush_fifo()
125 csr = musb_readw(epio, MUSB_TXCSR); in musb_h_tx_flush_fifo()
128 ep->epnum, csr)) in musb_h_tx_flush_fifo()
137 u16 csr; in musb_h_ep0_flush_fifo() local
142 csr = musb_readw(epio, MUSB_TXCSR); in musb_h_ep0_flush_fifo()
143 if (!(csr & (MUSB_CSR0_TXPKTRDY | MUSB_CSR0_RXPKTRDY))) in musb_h_ep0_flush_fifo()
146 csr = musb_readw(epio, MUSB_TXCSR); in musb_h_ep0_flush_fifo()
151 ep->epnum, csr); in musb_h_ep0_flush_fifo()
327 u16 csr; in musb_save_toggle() local
335 csr = musb_readw(epio, MUSB_RXCSR) & MUSB_RXCSR_H_DATATOGGLE; in musb_save_toggle()
337 csr = musb_readw(epio, MUSB_TXCSR) & MUSB_TXCSR_H_DATATOGGLE; in musb_save_toggle()
339 usb_settoggle(urb->dev, qh->epnum, !is_in, csr ? 1 : 0); in musb_save_toggle()
434 static u16 musb_h_flush_rxfifo(struct musb_hw_ep *hw_ep, u16 csr) in musb_h_flush_rxfifo() argument
440 csr |= MUSB_RXCSR_FLUSHFIFO | MUSB_RXCSR_RXPKTRDY; in musb_h_flush_rxfifo()
441 csr &= ~(MUSB_RXCSR_H_REQPKT in musb_h_flush_rxfifo()
446 musb_writew(hw_ep->regs, MUSB_RXCSR, csr); in musb_h_flush_rxfifo()
447 musb_writew(hw_ep->regs, MUSB_RXCSR, csr); in musb_h_flush_rxfifo()
461 u16 csr; in musb_host_packet_rx() local
534 csr = musb_readw(epio, MUSB_RXCSR); in musb_host_packet_rx()
535 csr |= MUSB_RXCSR_H_WZC_BITS; in musb_host_packet_rx()
537 musb_h_flush_rxfifo(hw_ep, csr); in musb_host_packet_rx()
540 csr &= ~(MUSB_RXCSR_RXPKTRDY | MUSB_RXCSR_H_REQPKT); in musb_host_packet_rx()
542 csr |= MUSB_RXCSR_H_REQPKT; in musb_host_packet_rx()
543 musb_writew(epio, MUSB_RXCSR, csr); in musb_host_packet_rx()
560 u16 csr; in musb_rx_reinit() local
569 csr = musb_readw(ep->regs, MUSB_TXCSR); in musb_rx_reinit()
570 if (csr & MUSB_TXCSR_MODE) { in musb_rx_reinit()
572 csr = musb_readw(ep->regs, MUSB_TXCSR); in musb_rx_reinit()
574 csr | MUSB_TXCSR_FRCDATATOG); in musb_rx_reinit()
581 if (csr & MUSB_TXCSR_DMAMODE) in musb_rx_reinit()
587 csr = musb_readw(ep->regs, MUSB_RXCSR); in musb_rx_reinit()
588 if (csr & MUSB_RXCSR_RXPKTRDY) in musb_rx_reinit()
627 u16 csr; in musb_tx_dma_program() local
634 csr = musb_readw(epio, MUSB_TXCSR); in musb_tx_dma_program()
637 csr |= MUSB_TXCSR_DMAMODE | MUSB_TXCSR_DMAENAB; in musb_tx_dma_program()
650 csr |= MUSB_TXCSR_AUTOSET; in musb_tx_dma_program()
653 csr &= ~(MUSB_TXCSR_AUTOSET | MUSB_TXCSR_DMAMODE); in musb_tx_dma_program()
654 csr |= MUSB_TXCSR_DMAENAB; /* against programmer's guide */ in musb_tx_dma_program()
657 musb_writew(epio, MUSB_TXCSR, csr); in musb_tx_dma_program()
684 csr = musb_readw(epio, MUSB_TXCSR); in musb_tx_dma_program()
685 csr &= ~(MUSB_TXCSR_AUTOSET | MUSB_TXCSR_DMAENAB); in musb_tx_dma_program()
686 musb_writew(epio, MUSB_TXCSR, csr | MUSB_TXCSR_H_WZC_BITS); in musb_tx_dma_program()
709 u16 csr; in musb_ep_program() local
723 csr = musb_readw(epio, MUSB_TXCSR); in musb_ep_program()
724 csr &= ~MUSB_TXCSR_DMAENAB; in musb_ep_program()
725 musb_writew(epio, MUSB_TXCSR, csr); in musb_ep_program()
748 u16 csr; in musb_ep_program() local
752 csr = musb_readw(epio, MUSB_TXCSR); in musb_ep_program()
774 csr &= ~(MUSB_TXCSR_H_NAKTIMEOUT in musb_ep_program()
782 csr |= MUSB_TXCSR_MODE; in musb_ep_program()
786 csr |= MUSB_TXCSR_H_WR_DATATOGGLE in musb_ep_program()
789 csr |= MUSB_TXCSR_CLRDATATOG; in musb_ep_program()
792 musb_writew(epio, MUSB_TXCSR, csr); in musb_ep_program()
794 csr &= ~MUSB_TXCSR_DMAMODE; in musb_ep_program()
795 musb_writew(epio, MUSB_TXCSR, csr); in musb_ep_program()
796 csr = musb_readw(epio, MUSB_TXCSR); in musb_ep_program()
875 u16 csr; in musb_ep_program() local
882 csr = MUSB_RXCSR_H_WR_DATATOGGLE in musb_ep_program()
885 csr = 0; in musb_ep_program()
887 csr |= MUSB_RXCSR_DISNYET; in musb_ep_program()
890 csr = musb_readw(hw_ep->regs, MUSB_RXCSR); in musb_ep_program()
892 if (csr & (MUSB_RXCSR_RXPKTRDY in musb_ep_program()
896 hw_ep->epnum, csr); in musb_ep_program()
899 csr &= MUSB_RXCSR_DISNYET; in musb_ep_program()
910 musb_writew(hw_ep->regs, MUSB_RXCSR, csr); in musb_ep_program()
911 csr = musb_readw(hw_ep->regs, MUSB_RXCSR); in musb_ep_program()
926 csr |= MUSB_RXCSR_DMAENAB; in musb_ep_program()
929 csr |= MUSB_RXCSR_H_REQPKT; in musb_ep_program()
930 dev_dbg(musb->controller, "RXCSR%d := %04x\n", epnum, csr); in musb_ep_program()
931 musb_writew(hw_ep->regs, MUSB_RXCSR, csr); in musb_ep_program()
932 csr = musb_readw(hw_ep->regs, MUSB_RXCSR); in musb_ep_program()
1087 u16 csr, len; in musb_h_ep0_irq() local
1100 csr = musb_readw(epio, MUSB_CSR0); in musb_h_ep0_irq()
1101 len = (csr & MUSB_CSR0_RXPKTRDY) in musb_h_ep0_irq()
1106 csr, qh, len, urb, musb->ep0_stage); in musb_h_ep0_irq()
1115 if (csr & MUSB_CSR0_H_RXSTALL) { in musb_h_ep0_irq()
1119 } else if (csr & MUSB_CSR0_H_ERROR) { in musb_h_ep0_irq()
1120 dev_dbg(musb->controller, "no response, csr0 %04x\n", csr); in musb_h_ep0_irq()
1123 } else if (csr & MUSB_CSR0_H_NAKTIMEOUT) { in musb_h_ep0_irq()
1146 if (csr & MUSB_CSR0_H_REQPKT) { in musb_h_ep0_irq()
1147 csr &= ~MUSB_CSR0_H_REQPKT; in musb_h_ep0_irq()
1148 musb_writew(epio, MUSB_CSR0, csr); in musb_h_ep0_irq()
1149 csr &= ~MUSB_CSR0_H_NAKTIMEOUT; in musb_h_ep0_irq()
1150 musb_writew(epio, MUSB_CSR0, csr); in musb_h_ep0_irq()
1174 csr = (MUSB_EP0_IN == musb->ep0_stage) in musb_h_ep0_irq()
1180 csr = MUSB_CSR0_H_STATUSPKT in musb_h_ep0_irq()
1183 csr = MUSB_CSR0_H_STATUSPKT in musb_h_ep0_irq()
1187 csr |= MUSB_CSR0_H_DIS_PING; in musb_h_ep0_irq()
1192 dev_dbg(musb->controller, "ep0 STATUS, csr %04x\n", csr); in musb_h_ep0_irq()
1195 musb_writew(epio, MUSB_CSR0, csr); in musb_h_ep0_irq()
2270 u16 csr; in musb_cleanup_urb() local
2291 csr = musb_h_flush_rxfifo(ep, 0); in musb_cleanup_urb()
2299 csr = musb_readw(epio, MUSB_TXCSR); in musb_cleanup_urb()
2300 csr &= ~(MUSB_TXCSR_AUTOSET in musb_cleanup_urb()
2306 musb_writew(epio, MUSB_TXCSR, csr); in musb_cleanup_urb()
2308 musb_writew(epio, MUSB_TXCSR, csr); in musb_cleanup_urb()
2310 csr = musb_readw(epio, MUSB_TXCSR); in musb_cleanup_urb()