cppi41_channel 132 drivers/dma/ti/cppi41.c struct cppi41_channel *chan_busy[ALLOC_DECS_NUM]; cppi41_channel 249 drivers/dma/ti/cppi41.c static struct cppi41_channel *to_cpp41_chan(struct dma_chan *c) cppi41_channel 251 drivers/dma/ti/cppi41.c return container_of(c, struct cppi41_channel, chan); cppi41_channel 254 drivers/dma/ti/cppi41.c static struct cppi41_channel *desc_to_chan(struct cppi41_dd *cdd, u32 desc) cppi41_channel 256 drivers/dma/ti/cppi41.c struct cppi41_channel *c; cppi41_channel 307 drivers/dma/ti/cppi41.c struct cppi41_channel *c; cppi41_channel 373 drivers/dma/ti/cppi41.c struct cppi41_channel *c = to_cpp41_chan(chan); cppi41_channel 401 drivers/dma/ti/cppi41.c struct cppi41_channel *c = to_cpp41_chan(chan); cppi41_channel 421 drivers/dma/ti/cppi41.c struct cppi41_channel *c = to_cpp41_chan(chan); cppi41_channel 431 drivers/dma/ti/cppi41.c static void push_desc_queue(struct cppi41_channel *c) cppi41_channel 482 drivers/dma/ti/cppi41.c struct cppi41_channel *c, *_c; cppi41_channel 492 drivers/dma/ti/cppi41.c struct cppi41_channel *c = to_cpp41_chan(chan); cppi41_channel 526 drivers/dma/ti/cppi41.c static u32 get_host_pd1(struct cppi41_channel *c) cppi41_channel 535 drivers/dma/ti/cppi41.c static u32 get_host_pd2(struct cppi41_channel *c) cppi41_channel 588 drivers/dma/ti/cppi41.c struct cppi41_channel *c = to_cpp41_chan(chan); cppi41_channel 641 drivers/dma/ti/cppi41.c static int cppi41_tear_down_chan(struct cppi41_channel *c) cppi41_channel 738 drivers/dma/ti/cppi41.c struct cppi41_channel *c = to_cpp41_chan(chan); cppi41_channel 747 drivers/dma/ti/cppi41.c struct cppi41_channel *cc, *_ct; cppi41_channel 778 drivers/dma/ti/cppi41.c struct cppi41_channel *cchan, *chans; cppi41_channel 948 drivers/dma/ti/cppi41.c struct cppi41_channel *cchan; cppi41_channel 1192 drivers/dma/ti/cppi41.c struct cppi41_channel *c; cppi41_channel 49 drivers/usb/musb/musb_cppi41.c void (*set_dma_mode)(struct cppi41_dma_channel *cppi41_channel, cppi41_channel 54 drivers/usb/musb/musb_cppi41.c static void save_rx_toggle(struct cppi41_dma_channel *cppi41_channel) cppi41_channel 59 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) cppi41_channel 61 drivers/usb/musb/musb_cppi41.c if (!is_host_active(cppi41_channel->controller->controller.musb)) cppi41_channel 64 drivers/usb/musb/musb_cppi41.c csr = musb_readw(cppi41_channel->hw_ep->regs, MUSB_RXCSR); cppi41_channel 67 drivers/usb/musb/musb_cppi41.c cppi41_channel->usb_toggle = toggle; cppi41_channel 70 drivers/usb/musb/musb_cppi41.c static void update_rx_toggle(struct cppi41_dma_channel *cppi41_channel) cppi41_channel 72 drivers/usb/musb/musb_cppi41.c struct musb_hw_ep *hw_ep = cppi41_channel->hw_ep; cppi41_channel 77 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) cppi41_channel 91 drivers/usb/musb/musb_cppi41.c if (!toggle && toggle == cppi41_channel->usb_toggle) { cppi41_channel 93 drivers/usb/musb/musb_cppi41.c musb_writew(cppi41_channel->hw_ep->regs, MUSB_RXCSR, csr); cppi41_channel 97 drivers/usb/musb/musb_cppi41.c cppi41_channel->usb_toggle = toggle; cppi41_channel 117 drivers/usb/musb/musb_cppi41.c static void cppi41_trans_done(struct cppi41_dma_channel *cppi41_channel) cppi41_channel 119 drivers/usb/musb/musb_cppi41.c struct musb_hw_ep *hw_ep = cppi41_channel->hw_ep; cppi41_channel 124 drivers/usb/musb/musb_cppi41.c if (!cppi41_channel->prog_len || cppi41_channel 125 drivers/usb/musb/musb_cppi41.c (cppi41_channel->channel.status == MUSB_DMA_STATUS_FREE)) { cppi41_channel 128 drivers/usb/musb/musb_cppi41.c cppi41_channel->channel.actual_len = cppi41_channel 129 drivers/usb/musb/musb_cppi41.c cppi41_channel->transferred; cppi41_channel 130 drivers/usb/musb/musb_cppi41.c cppi41_channel->channel.status = MUSB_DMA_STATUS_FREE; cppi41_channel 131 drivers/usb/musb/musb_cppi41.c cppi41_channel->channel.rx_packet_done = true; cppi41_channel 137 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->tx_zlp && (cppi41_channel->transferred % cppi41_channel 138 drivers/usb/musb/musb_cppi41.c cppi41_channel->packet_sz) == 0) { cppi41_channel 144 drivers/usb/musb/musb_cppi41.c trace_musb_cppi41_done(cppi41_channel); cppi41_channel 145 drivers/usb/musb/musb_cppi41.c musb_dma_completion(musb, hw_ep->epnum, cppi41_channel->is_tx); cppi41_channel 148 drivers/usb/musb/musb_cppi41.c struct dma_chan *dc = cppi41_channel->dc; cppi41_channel 153 drivers/usb/musb/musb_cppi41.c cppi41_channel->buf_addr += cppi41_channel->packet_sz; cppi41_channel 155 drivers/usb/musb/musb_cppi41.c remain_bytes = cppi41_channel->total_len; cppi41_channel 156 drivers/usb/musb/musb_cppi41.c remain_bytes -= cppi41_channel->transferred; cppi41_channel 157 drivers/usb/musb/musb_cppi41.c remain_bytes = min(remain_bytes, cppi41_channel->packet_sz); cppi41_channel 158 drivers/usb/musb/musb_cppi41.c cppi41_channel->prog_len = remain_bytes; cppi41_channel 160 drivers/usb/musb/musb_cppi41.c direction = cppi41_channel->is_tx ? DMA_MEM_TO_DEV cppi41_channel 163 drivers/usb/musb/musb_cppi41.c cppi41_channel->buf_addr, cppi41_channel 171 drivers/usb/musb/musb_cppi41.c dma_desc->callback_param = &cppi41_channel->channel; cppi41_channel 172 drivers/usb/musb/musb_cppi41.c cppi41_channel->cookie = dma_desc->tx_submit(dma_desc); cppi41_channel 173 drivers/usb/musb/musb_cppi41.c trace_musb_cppi41_cont(cppi41_channel); cppi41_channel 176 drivers/usb/musb/musb_cppi41.c if (!cppi41_channel->is_tx) { cppi41_channel 188 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel, *n; cppi41_channel 198 drivers/usb/musb/musb_cppi41.c list_for_each_entry_safe(cppi41_channel, n, &controller->early_tx_list, cppi41_channel 201 drivers/usb/musb/musb_cppi41.c struct musb_hw_ep *hw_ep = cppi41_channel->hw_ep; cppi41_channel 205 drivers/usb/musb/musb_cppi41.c list_del_init(&cppi41_channel->tx_check); cppi41_channel 206 drivers/usb/musb/musb_cppi41.c cppi41_trans_done(cppi41_channel); cppi41_channel 224 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel = channel->private_data; cppi41_channel 225 drivers/usb/musb/musb_cppi41.c struct musb_hw_ep *hw_ep = cppi41_channel->hw_ep; cppi41_channel 234 drivers/usb/musb/musb_cppi41.c controller = cppi41_channel->controller; cppi41_channel 243 drivers/usb/musb/musb_cppi41.c dmaengine_tx_status(cppi41_channel->dc, cppi41_channel->cookie, cppi41_channel 245 drivers/usb/musb/musb_cppi41.c transferred = cppi41_channel->prog_len - txstate.residue; cppi41_channel 246 drivers/usb/musb/musb_cppi41.c cppi41_channel->transferred += transferred; cppi41_channel 248 drivers/usb/musb/musb_cppi41.c trace_musb_cppi41_gb(cppi41_channel); cppi41_channel 249 drivers/usb/musb/musb_cppi41.c update_rx_toggle(cppi41_channel); cppi41_channel 251 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->transferred == cppi41_channel->total_len || cppi41_channel 252 drivers/usb/musb/musb_cppi41.c transferred < cppi41_channel->packet_sz) cppi41_channel 253 drivers/usb/musb/musb_cppi41.c cppi41_channel->prog_len = 0; cppi41_channel 255 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) { cppi41_channel 277 drivers/usb/musb/musb_cppi41.c if (!cppi41_channel->is_tx || empty) { cppi41_channel 278 drivers/usb/musb/musb_cppi41.c cppi41_trans_done(cppi41_channel); cppi41_channel 305 drivers/usb/musb/musb_cppi41.c cppi41_trans_done(cppi41_channel); cppi41_channel 314 drivers/usb/musb/musb_cppi41.c list_add_tail(&cppi41_channel->tx_check, cppi41_channel 317 drivers/usb/musb/musb_cppi41.c unsigned long usecs = cppi41_channel->total_len / 10; cppi41_channel 339 drivers/usb/musb/musb_cppi41.c static void cppi41_set_dma_mode(struct cppi41_dma_channel *cppi41_channel, cppi41_channel 342 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_controller *controller = cppi41_channel->controller; cppi41_channel 348 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) cppi41_channel 352 drivers/usb/musb/musb_cppi41.c port = cppi41_channel->port_num; cppi41_channel 357 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) { cppi41_channel 366 drivers/usb/musb/musb_cppi41.c static void da8xx_set_dma_mode(struct cppi41_dma_channel *cppi41_channel, cppi41_channel 369 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_controller *controller = cppi41_channel->controller; cppi41_channel 377 drivers/usb/musb/musb_cppi41.c port = cppi41_channel->port_num; cppi41_channel 380 drivers/usb/musb/musb_cppi41.c if (!cppi41_channel->is_tx) cppi41_channel 392 drivers/usb/musb/musb_cppi41.c static void cppi41_set_autoreq_mode(struct cppi41_dma_channel *cppi41_channel, cppi41_channel 395 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_controller *controller = cppi41_channel->controller; cppi41_channel 401 drivers/usb/musb/musb_cppi41.c port = cppi41_channel->port_num; cppi41_channel 415 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel = channel->private_data; cppi41_channel 416 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_controller *controller = cppi41_channel->controller; cppi41_channel 417 drivers/usb/musb/musb_cppi41.c struct dma_chan *dc = cppi41_channel->dc; cppi41_channel 420 drivers/usb/musb/musb_cppi41.c struct musb *musb = cppi41_channel->controller->controller.musb; cppi41_channel 423 drivers/usb/musb/musb_cppi41.c cppi41_channel->buf_addr = dma_addr; cppi41_channel 424 drivers/usb/musb/musb_cppi41.c cppi41_channel->total_len = len; cppi41_channel 425 drivers/usb/musb/musb_cppi41.c cppi41_channel->transferred = 0; cppi41_channel 426 drivers/usb/musb/musb_cppi41.c cppi41_channel->packet_sz = packet_sz; cppi41_channel 427 drivers/usb/musb/musb_cppi41.c cppi41_channel->tx_zlp = (cppi41_channel->is_tx && mode) ? 1 : 0; cppi41_channel 433 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) cppi41_channel 440 drivers/usb/musb/musb_cppi41.c RNDIS_REG(cppi41_channel->port_num), len); cppi41_channel 442 drivers/usb/musb/musb_cppi41.c controller->set_dma_mode(cppi41_channel, cppi41_channel 446 drivers/usb/musb/musb_cppi41.c cppi41_set_autoreq_mode(cppi41_channel, cppi41_channel 450 drivers/usb/musb/musb_cppi41.c RNDIS_REG(cppi41_channel->port_num), 0); cppi41_channel 451 drivers/usb/musb/musb_cppi41.c controller->set_dma_mode(cppi41_channel, cppi41_channel 453 drivers/usb/musb/musb_cppi41.c cppi41_set_autoreq_mode(cppi41_channel, cppi41_channel 458 drivers/usb/musb/musb_cppi41.c controller->set_dma_mode(cppi41_channel, cppi41_channel 460 drivers/usb/musb/musb_cppi41.c cppi41_set_autoreq_mode(cppi41_channel, EP_MODE_AUTOREQ_NONE); cppi41_channel 463 drivers/usb/musb/musb_cppi41.c cppi41_channel->prog_len = len; cppi41_channel 464 drivers/usb/musb/musb_cppi41.c direction = cppi41_channel->is_tx ? DMA_MEM_TO_DEV : DMA_DEV_TO_MEM; cppi41_channel 472 drivers/usb/musb/musb_cppi41.c cppi41_channel->cookie = dma_desc->tx_submit(dma_desc); cppi41_channel 473 drivers/usb/musb/musb_cppi41.c cppi41_channel->channel.rx_packet_done = false; cppi41_channel 475 drivers/usb/musb/musb_cppi41.c trace_musb_cppi41_config(cppi41_channel); cppi41_channel 477 drivers/usb/musb/musb_cppi41.c save_rx_toggle(cppi41_channel); cppi41_channel 487 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel = NULL; cppi41_channel 494 drivers/usb/musb/musb_cppi41.c cppi41_channel = &controller->tx_channel[ch_num]; cppi41_channel 496 drivers/usb/musb/musb_cppi41.c cppi41_channel = &controller->rx_channel[ch_num]; cppi41_channel 498 drivers/usb/musb/musb_cppi41.c if (!cppi41_channel->dc) cppi41_channel 501 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_allocated) cppi41_channel 504 drivers/usb/musb/musb_cppi41.c cppi41_channel->hw_ep = hw_ep; cppi41_channel 505 drivers/usb/musb/musb_cppi41.c cppi41_channel->is_allocated = 1; cppi41_channel 507 drivers/usb/musb/musb_cppi41.c trace_musb_cppi41_alloc(cppi41_channel); cppi41_channel 508 drivers/usb/musb/musb_cppi41.c return &cppi41_channel->channel; cppi41_channel 513 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel = channel->private_data; cppi41_channel 515 drivers/usb/musb/musb_cppi41.c trace_musb_cppi41_free(cppi41_channel); cppi41_channel 516 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_allocated) { cppi41_channel 517 drivers/usb/musb/musb_cppi41.c cppi41_channel->is_allocated = 0; cppi41_channel 528 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel = channel->private_data; cppi41_channel 534 drivers/usb/musb/musb_cppi41.c if (is_host_active(cppi41_channel->controller->controller.musb)) { cppi41_channel 535 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) cppi41_channel 536 drivers/usb/musb/musb_cppi41.c hb_mult = cppi41_channel->hw_ep->out_qh->hb_mult; cppi41_channel 538 drivers/usb/musb/musb_cppi41.c hb_mult = cppi41_channel->hw_ep->in_qh->hb_mult; cppi41_channel 557 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel = channel->private_data; cppi41_channel 558 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_controller *controller = cppi41_channel->controller; cppi41_channel 565 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->hw_ep->ep_in.type != USB_ENDPOINT_XFER_BULK) cppi41_channel 567 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->is_tx) cppi41_channel 575 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel = channel->private_data; cppi41_channel 576 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_controller *controller = cppi41_channel->controller; cppi41_channel 578 drivers/usb/musb/musb_cppi41.c void __iomem *epio = cppi41_channel->hw_ep->regs; cppi41_channel 584 drivers/usb/musb/musb_cppi41.c is_tx = cppi41_channel->is_tx; cppi41_channel 585 drivers/usb/musb/musb_cppi41.c trace_musb_cppi41_abort(cppi41_channel); cppi41_channel 587 drivers/usb/musb/musb_cppi41.c if (cppi41_channel->channel.status == MUSB_DMA_STATUS_FREE) cppi41_channel 590 drivers/usb/musb/musb_cppi41.c list_del_init(&cppi41_channel->tx_check); cppi41_channel 596 drivers/usb/musb/musb_cppi41.c cppi41_set_autoreq_mode(cppi41_channel, EP_MODE_AUTOREQ_NONE); cppi41_channel 620 drivers/usb/musb/musb_cppi41.c tdbit = 1 << cppi41_channel->port_num; cppi41_channel 628 drivers/usb/musb/musb_cppi41.c ret = dmaengine_terminate_all(cppi41_channel->dc); cppi41_channel 641 drivers/usb/musb/musb_cppi41.c cppi41_channel->channel.status = MUSB_DMA_STATUS_FREE; cppi41_channel 670 drivers/usb/musb/musb_cppi41.c struct cppi41_dma_channel *cppi41_channel; cppi41_channel 705 drivers/usb/musb/musb_cppi41.c cppi41_channel = &controller->tx_channel[port - 1]; cppi41_channel 707 drivers/usb/musb/musb_cppi41.c cppi41_channel = &controller->rx_channel[port - 1]; cppi41_channel 709 drivers/usb/musb/musb_cppi41.c cppi41_channel->controller = controller; cppi41_channel 710 drivers/usb/musb/musb_cppi41.c cppi41_channel->port_num = port; cppi41_channel 711 drivers/usb/musb/musb_cppi41.c cppi41_channel->is_tx = is_tx; cppi41_channel 712 drivers/usb/musb/musb_cppi41.c INIT_LIST_HEAD(&cppi41_channel->tx_check); cppi41_channel 714 drivers/usb/musb/musb_cppi41.c musb_dma = &cppi41_channel->channel; cppi41_channel 715 drivers/usb/musb/musb_cppi41.c musb_dma->private_data = cppi41_channel; cppi41_channel 728 drivers/usb/musb/musb_cppi41.c cppi41_channel->dc = dc;