mchan 148 drivers/dma/bcm-sba-raid.c struct mbox_chan *mchan; mchan 226 drivers/dma/bcm-sba-raid.c mbox_client_peek_data(sba->mchan); mchan 368 drivers/dma/bcm-sba-raid.c ret = mbox_send_message(sba->mchan, &req->msg); mchan 381 drivers/dma/bcm-sba-raid.c mbox_client_txdone(sba->mchan, ret); mchan 558 drivers/dma/bcm-sba-raid.c mbox_client_peek_data(sba->mchan); mchan 1688 drivers/dma/bcm-sba-raid.c sba->mchan = mbox_request_channel(&sba->client, 0); mchan 1689 drivers/dma/bcm-sba-raid.c if (IS_ERR(sba->mchan)) { mchan 1690 drivers/dma/bcm-sba-raid.c ret = PTR_ERR(sba->mchan); mchan 1741 drivers/dma/bcm-sba-raid.c mbox_free_channel(sba->mchan); mchan 1755 drivers/dma/bcm-sba-raid.c mbox_free_channel(sba->mchan); mchan 129 drivers/dma/img-mdc-dma.c void (*enable_chan)(struct mdc_chan *mchan); mchan 130 drivers/dma/img-mdc-dma.c void (*disable_chan)(struct mdc_chan *mchan); mchan 159 drivers/dma/img-mdc-dma.c static inline u32 mdc_chan_readl(struct mdc_chan *mchan, u32 reg) mchan 161 drivers/dma/img-mdc-dma.c return mdc_readl(mchan->mdma, mchan->chan_nr * 0x040 + reg); mchan 164 drivers/dma/img-mdc-dma.c static inline void mdc_chan_writel(struct mdc_chan *mchan, u32 val, u32 reg) mchan 166 drivers/dma/img-mdc-dma.c mdc_writel(mchan->mdma, val, mchan->chan_nr * 0x040 + reg); mchan 205 drivers/dma/img-mdc-dma.c static void mdc_list_desc_config(struct mdc_chan *mchan, mchan 210 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 217 drivers/dma/img-mdc-dma.c (mchan->thread << MDC_READ_PORT_CONFIG_STHREAD_SHIFT) | mchan 218 drivers/dma/img-mdc-dma.c (mchan->thread << MDC_READ_PORT_CONFIG_RTHREAD_SHIFT) | mchan 219 drivers/dma/img-mdc-dma.c (mchan->thread << MDC_READ_PORT_CONFIG_WTHREAD_SHIFT); mchan 239 drivers/dma/img-mdc-dma.c mdc_set_write_width(ldesc, mchan->config.dst_addr_width); mchan 240 drivers/dma/img-mdc-dma.c burst_size = min(max_burst, mchan->config.dst_maxburst * mchan 241 drivers/dma/img-mdc-dma.c mchan->config.dst_addr_width); mchan 245 drivers/dma/img-mdc-dma.c mdc_set_read_width(ldesc, mchan->config.src_addr_width); mchan 247 drivers/dma/img-mdc-dma.c burst_size = min(max_burst, mchan->config.src_maxburst * mchan 248 drivers/dma/img-mdc-dma.c mchan->config.src_addr_width); mchan 289 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 290 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 301 drivers/dma/img-mdc-dma.c mdesc->chan = mchan; mchan 321 drivers/dma/img-mdc-dma.c mdc_list_desc_config(mchan, curr, DMA_MEM_TO_MEM, src, dest, mchan 332 drivers/dma/img-mdc-dma.c return vchan_tx_prep(&mchan->vc, &mdesc->vd, flags); mchan 340 drivers/dma/img-mdc-dma.c static int mdc_check_slave_width(struct mdc_chan *mchan, mchan 346 drivers/dma/img-mdc-dma.c width = mchan->config.dst_addr_width; mchan 348 drivers/dma/img-mdc-dma.c width = mchan->config.src_addr_width; mchan 360 drivers/dma/img-mdc-dma.c if (width > mchan->mdma->bus_width) mchan 371 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 372 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 383 drivers/dma/img-mdc-dma.c if (mdc_check_slave_width(mchan, dir) < 0) mchan 389 drivers/dma/img-mdc-dma.c mdesc->chan = mchan; mchan 418 drivers/dma/img-mdc-dma.c mdc_list_desc_config(mchan, curr, dir, mchan 420 drivers/dma/img-mdc-dma.c mchan->config.dst_addr, mchan 423 drivers/dma/img-mdc-dma.c mdc_list_desc_config(mchan, curr, dir, mchan 424 drivers/dma/img-mdc-dma.c mchan->config.src_addr, mchan 439 drivers/dma/img-mdc-dma.c return vchan_tx_prep(&mchan->vc, &mdesc->vd, flags); mchan 452 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 453 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 466 drivers/dma/img-mdc-dma.c if (mdc_check_slave_width(mchan, dir) < 0) mchan 472 drivers/dma/img-mdc-dma.c mdesc->chan = mchan; mchan 498 drivers/dma/img-mdc-dma.c mdc_list_desc_config(mchan, curr, dir, buf, mchan 499 drivers/dma/img-mdc-dma.c mchan->config.dst_addr, mchan 502 drivers/dma/img-mdc-dma.c mdc_list_desc_config(mchan, curr, dir, mchan 503 drivers/dma/img-mdc-dma.c mchan->config.src_addr, mchan 516 drivers/dma/img-mdc-dma.c return vchan_tx_prep(&mchan->vc, &mdesc->vd, flags); mchan 524 drivers/dma/img-mdc-dma.c static void mdc_issue_desc(struct mdc_chan *mchan) mchan 526 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 531 drivers/dma/img-mdc-dma.c vd = vchan_next_desc(&mchan->vc); mchan 538 drivers/dma/img-mdc-dma.c mchan->desc = mdesc; mchan 541 drivers/dma/img-mdc-dma.c mchan->chan_nr); mchan 543 drivers/dma/img-mdc-dma.c mdma->soc->enable_chan(mchan); mchan 545 drivers/dma/img-mdc-dma.c val = mdc_chan_readl(mchan, MDC_GENERAL_CONFIG); mchan 549 drivers/dma/img-mdc-dma.c mdc_chan_writel(mchan, val, MDC_GENERAL_CONFIG); mchan 550 drivers/dma/img-mdc-dma.c val = (mchan->thread << MDC_READ_PORT_CONFIG_STHREAD_SHIFT) | mchan 551 drivers/dma/img-mdc-dma.c (mchan->thread << MDC_READ_PORT_CONFIG_RTHREAD_SHIFT) | mchan 552 drivers/dma/img-mdc-dma.c (mchan->thread << MDC_READ_PORT_CONFIG_WTHREAD_SHIFT); mchan 553 drivers/dma/img-mdc-dma.c mdc_chan_writel(mchan, val, MDC_READ_PORT_CONFIG); mchan 554 drivers/dma/img-mdc-dma.c mdc_chan_writel(mchan, mdesc->list_phys, MDC_LIST_NODE_ADDRESS); mchan 555 drivers/dma/img-mdc-dma.c val = mdc_chan_readl(mchan, MDC_CONTROL_AND_STATUS); mchan 557 drivers/dma/img-mdc-dma.c mdc_chan_writel(mchan, val, MDC_CONTROL_AND_STATUS); mchan 562 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 565 drivers/dma/img-mdc-dma.c spin_lock_irqsave(&mchan->vc.lock, flags); mchan 566 drivers/dma/img-mdc-dma.c if (vchan_issue_pending(&mchan->vc) && !mchan->desc) mchan 567 drivers/dma/img-mdc-dma.c mdc_issue_desc(mchan); mchan 568 drivers/dma/img-mdc-dma.c spin_unlock_irqrestore(&mchan->vc.lock, flags); mchan 574 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 588 drivers/dma/img-mdc-dma.c spin_lock_irqsave(&mchan->vc.lock, flags); mchan 589 drivers/dma/img-mdc-dma.c vd = vchan_find_desc(&mchan->vc, cookie); mchan 593 drivers/dma/img-mdc-dma.c } else if (mchan->desc && mchan->desc->vd.tx.cookie == cookie) { mchan 598 drivers/dma/img-mdc-dma.c mdesc = mchan->desc; mchan 605 drivers/dma/img-mdc-dma.c val1 = mdc_chan_readl(mchan, MDC_CMDS_PROCESSED) & mchan 607 drivers/dma/img-mdc-dma.c residue = mdc_chan_readl(mchan, mchan 609 drivers/dma/img-mdc-dma.c val2 = mdc_chan_readl(mchan, MDC_CMDS_PROCESSED) & mchan 642 drivers/dma/img-mdc-dma.c spin_unlock_irqrestore(&mchan->vc.lock, flags); mchan 649 drivers/dma/img-mdc-dma.c static unsigned int mdc_get_new_events(struct mdc_chan *mchan) mchan 654 drivers/dma/img-mdc-dma.c val = mdc_chan_readl(mchan, MDC_CMDS_PROCESSED); mchan 663 drivers/dma/img-mdc-dma.c val = mdc_chan_readl(mchan, MDC_CMDS_PROCESSED); mchan 674 drivers/dma/img-mdc-dma.c mdc_chan_writel(mchan, val, MDC_CMDS_PROCESSED); mchan 676 drivers/dma/img-mdc-dma.c val = mdc_chan_readl(mchan, MDC_CMDS_PROCESSED); mchan 693 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 697 drivers/dma/img-mdc-dma.c spin_lock_irqsave(&mchan->vc.lock, flags); mchan 699 drivers/dma/img-mdc-dma.c mdc_chan_writel(mchan, MDC_CONTROL_AND_STATUS_CANCEL, mchan 702 drivers/dma/img-mdc-dma.c if (mchan->desc) { mchan 703 drivers/dma/img-mdc-dma.c vchan_terminate_vdesc(&mchan->desc->vd); mchan 704 drivers/dma/img-mdc-dma.c mchan->desc = NULL; mchan 706 drivers/dma/img-mdc-dma.c vchan_get_all_descriptors(&mchan->vc, &head); mchan 708 drivers/dma/img-mdc-dma.c mdc_get_new_events(mchan); mchan 710 drivers/dma/img-mdc-dma.c spin_unlock_irqrestore(&mchan->vc.lock, flags); mchan 712 drivers/dma/img-mdc-dma.c vchan_dma_desc_free_list(&mchan->vc, &head); mchan 719 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 721 drivers/dma/img-mdc-dma.c vchan_synchronize(&mchan->vc); mchan 727 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 730 drivers/dma/img-mdc-dma.c spin_lock_irqsave(&mchan->vc.lock, flags); mchan 731 drivers/dma/img-mdc-dma.c mchan->config = *config; mchan 732 drivers/dma/img-mdc-dma.c spin_unlock_irqrestore(&mchan->vc.lock, flags); mchan 739 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 740 drivers/dma/img-mdc-dma.c struct device *dev = mdma2dev(mchan->mdma); mchan 747 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 748 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 752 drivers/dma/img-mdc-dma.c mdma->soc->disable_chan(mchan); mchan 758 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = (struct mdc_chan *)dev_id; mchan 762 drivers/dma/img-mdc-dma.c spin_lock(&mchan->vc.lock); mchan 764 drivers/dma/img-mdc-dma.c dev_dbg(mdma2dev(mchan->mdma), "IRQ on channel %d\n", mchan->chan_nr); mchan 766 drivers/dma/img-mdc-dma.c new_events = mdc_get_new_events(mchan); mchan 771 drivers/dma/img-mdc-dma.c mdesc = mchan->desc; mchan 773 drivers/dma/img-mdc-dma.c dev_warn(mdma2dev(mchan->mdma), mchan 775 drivers/dma/img-mdc-dma.c mchan->chan_nr); mchan 796 drivers/dma/img-mdc-dma.c mchan->desc = NULL; mchan 798 drivers/dma/img-mdc-dma.c mdc_issue_desc(mchan); mchan 803 drivers/dma/img-mdc-dma.c spin_unlock(&mchan->vc.lock); mchan 818 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = to_mdc_chan(chan); mchan 820 drivers/dma/img-mdc-dma.c if (!(dma_spec->args[1] & BIT(mchan->chan_nr))) mchan 823 drivers/dma/img-mdc-dma.c mchan->periph = dma_spec->args[0]; mchan 824 drivers/dma/img-mdc-dma.c mchan->thread = dma_spec->args[2]; mchan 836 drivers/dma/img-mdc-dma.c static void pistachio_mdc_enable_chan(struct mdc_chan *mchan) mchan 838 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 841 drivers/dma/img-mdc-dma.c PISTACHIO_CR_PERIPH_DMA_ROUTE(mchan->chan_nr), mchan 843 drivers/dma/img-mdc-dma.c PISTACHIO_CR_PERIPH_DMA_ROUTE_SHIFT(mchan->chan_nr), mchan 844 drivers/dma/img-mdc-dma.c mchan->periph << mchan 845 drivers/dma/img-mdc-dma.c PISTACHIO_CR_PERIPH_DMA_ROUTE_SHIFT(mchan->chan_nr)); mchan 848 drivers/dma/img-mdc-dma.c static void pistachio_mdc_disable_chan(struct mdc_chan *mchan) mchan 850 drivers/dma/img-mdc-dma.c struct mdc_dma *mdma = mchan->mdma; mchan 853 drivers/dma/img-mdc-dma.c PISTACHIO_CR_PERIPH_DMA_ROUTE(mchan->chan_nr), mchan 855 drivers/dma/img-mdc-dma.c PISTACHIO_CR_PERIPH_DMA_ROUTE_SHIFT(mchan->chan_nr), mchan 970 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = &mdma->channels[i]; mchan 972 drivers/dma/img-mdc-dma.c mchan->mdma = mdma; mchan 973 drivers/dma/img-mdc-dma.c mchan->chan_nr = i; mchan 974 drivers/dma/img-mdc-dma.c mchan->irq = platform_get_irq(pdev, i); mchan 975 drivers/dma/img-mdc-dma.c if (mchan->irq < 0) mchan 976 drivers/dma/img-mdc-dma.c return mchan->irq; mchan 978 drivers/dma/img-mdc-dma.c ret = devm_request_irq(&pdev->dev, mchan->irq, mdc_chan_irq, mchan 980 drivers/dma/img-mdc-dma.c dev_name(&pdev->dev), mchan); mchan 984 drivers/dma/img-mdc-dma.c mchan->vc.desc_free = mdc_desc_free; mchan 985 drivers/dma/img-mdc-dma.c vchan_init(&mchan->vc, &mdma->dma_dev); mchan 1026 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan, *next; mchan 1031 drivers/dma/img-mdc-dma.c list_for_each_entry_safe(mchan, next, &mdma->dma_dev.channels, mchan 1033 drivers/dma/img-mdc-dma.c list_del(&mchan->vc.chan.device_node); mchan 1035 drivers/dma/img-mdc-dma.c devm_free_irq(&pdev->dev, mchan->irq, mchan); mchan 1037 drivers/dma/img-mdc-dma.c tasklet_kill(&mchan->vc.task); mchan 1055 drivers/dma/img-mdc-dma.c struct mdc_chan *mchan = &mdma->channels[i]; mchan 1057 drivers/dma/img-mdc-dma.c if (unlikely(mchan->desc)) mchan 241 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(c); mchan 243 drivers/dma/mpc512x_dma.c return container_of(mchan, struct mpc_dma, channels[c->chan_id]); mchan 254 drivers/dma/mpc512x_dma.c static void mpc_dma_execute(struct mpc_dma_chan *mchan) mchan 256 drivers/dma/mpc512x_dma.c struct mpc_dma *mdma = dma_chan_to_mpc_dma(&mchan->chan); mchan 260 drivers/dma/mpc512x_dma.c int cid = mchan->chan.chan_id; mchan 262 drivers/dma/mpc512x_dma.c while (!list_empty(&mchan->queued)) { mchan 263 drivers/dma/mpc512x_dma.c mdesc = list_first_entry(&mchan->queued, mchan 272 drivers/dma/mpc512x_dma.c if (list_empty(&mchan->active)) mchan 273 drivers/dma/mpc512x_dma.c list_move_tail(&mdesc->node, &mchan->active); mchan 276 drivers/dma/mpc512x_dma.c list_move_tail(&mdesc->node, &mchan->active); mchan 281 drivers/dma/mpc512x_dma.c list_for_each_entry(mdesc, &mchan->active, node) { mchan 320 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan; mchan 327 drivers/dma/mpc512x_dma.c mchan = &mdma->channels[ch + off]; mchan 329 drivers/dma/mpc512x_dma.c spin_lock(&mchan->lock); mchan 336 drivers/dma/mpc512x_dma.c list_for_each_entry(mdesc, &mchan->active, node) mchan 340 drivers/dma/mpc512x_dma.c list_splice_tail_init(&mchan->active, &mchan->completed); mchan 341 drivers/dma/mpc512x_dma.c if (!list_empty(&mchan->queued)) mchan 342 drivers/dma/mpc512x_dma.c mpc_dma_execute(mchan); mchan 344 drivers/dma/mpc512x_dma.c spin_unlock(&mchan->lock); mchan 379 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan; mchan 387 drivers/dma/mpc512x_dma.c mchan = &mdma->channels[i]; mchan 390 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, flags); mchan 391 drivers/dma/mpc512x_dma.c if (!list_empty(&mchan->completed)) mchan 392 drivers/dma/mpc512x_dma.c list_splice_tail_init(&mchan->completed, &list); mchan 393 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 409 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, flags); mchan 410 drivers/dma/mpc512x_dma.c list_splice_tail_init(&list, &mchan->free); mchan 411 drivers/dma/mpc512x_dma.c mchan->chan.completed_cookie = last_cookie; mchan 412 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 462 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(txd->chan); mchan 469 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, flags); mchan 472 drivers/dma/mpc512x_dma.c list_move_tail(&mdesc->node, &mchan->queued); mchan 475 drivers/dma/mpc512x_dma.c if (list_empty(&mchan->active)) mchan 476 drivers/dma/mpc512x_dma.c mpc_dma_execute(mchan); mchan 480 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 489 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(chan); mchan 531 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, flags); mchan 532 drivers/dma/mpc512x_dma.c mchan->tcd = tcd; mchan 533 drivers/dma/mpc512x_dma.c mchan->tcd_paddr = tcd_paddr; mchan 534 drivers/dma/mpc512x_dma.c list_splice_tail_init(&descs, &mchan->free); mchan 535 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 547 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(chan); mchan 554 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, flags); mchan 557 drivers/dma/mpc512x_dma.c BUG_ON(!list_empty(&mchan->prepared)); mchan 558 drivers/dma/mpc512x_dma.c BUG_ON(!list_empty(&mchan->queued)); mchan 559 drivers/dma/mpc512x_dma.c BUG_ON(!list_empty(&mchan->active)); mchan 560 drivers/dma/mpc512x_dma.c BUG_ON(!list_empty(&mchan->completed)); mchan 563 drivers/dma/mpc512x_dma.c list_splice_tail_init(&mchan->free, &descs); mchan 564 drivers/dma/mpc512x_dma.c tcd = mchan->tcd; mchan 565 drivers/dma/mpc512x_dma.c tcd_paddr = mchan->tcd_paddr; mchan 567 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 605 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(chan); mchan 611 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, iflags); mchan 612 drivers/dma/mpc512x_dma.c if (!list_empty(&mchan->free)) { mchan 613 drivers/dma/mpc512x_dma.c mdesc = list_first_entry(&mchan->free, struct mpc_dma_desc, mchan 617 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, iflags); mchan 667 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, iflags); mchan 668 drivers/dma/mpc512x_dma.c list_add_tail(&mdesc->node, &mchan->prepared); mchan 669 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, iflags); mchan 689 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(chan); mchan 707 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, iflags); mchan 709 drivers/dma/mpc512x_dma.c mdesc = list_first_entry(&mchan->free, mchan 712 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, iflags); mchan 721 drivers/dma/mpc512x_dma.c per_paddr = mchan->src_per_paddr; mchan 722 drivers/dma/mpc512x_dma.c tcd_nunits = mchan->src_tcd_nunits; mchan 724 drivers/dma/mpc512x_dma.c per_paddr = mchan->dst_per_paddr; mchan 725 drivers/dma/mpc512x_dma.c tcd_nunits = mchan->dst_tcd_nunits; mchan 728 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, iflags); mchan 745 drivers/dma/mpc512x_dma.c if (!IS_ALIGNED(sg_dma_address(sg), mchan->dwidth)) mchan 749 drivers/dma/mpc512x_dma.c tcd->doff = mchan->dwidth; mchan 754 drivers/dma/mpc512x_dma.c if (!IS_ALIGNED(sg_dma_address(sg), mchan->swidth)) mchan 757 drivers/dma/mpc512x_dma.c tcd->soff = mchan->swidth; mchan 761 drivers/dma/mpc512x_dma.c tcd->ssize = buswidth_to_dmatsize(mchan->swidth); mchan 762 drivers/dma/mpc512x_dma.c tcd->dsize = buswidth_to_dmatsize(mchan->dwidth); mchan 766 drivers/dma/mpc512x_dma.c if (!IS_ALIGNED(tcd->nbytes, mchan->swidth)) mchan 794 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, iflags); mchan 795 drivers/dma/mpc512x_dma.c list_add_tail(&mdesc->node, &mchan->prepared); mchan 796 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, iflags); mchan 803 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, iflags); mchan 804 drivers/dma/mpc512x_dma.c list_add_tail(&mdesc->node, &mchan->free); mchan 805 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, iflags); mchan 831 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(chan); mchan 832 drivers/dma/mpc512x_dma.c struct mpc_dma *mdma = dma_chan_to_mpc_dma(&mchan->chan); mchan 858 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, flags); mchan 860 drivers/dma/mpc512x_dma.c mchan->src_per_paddr = cfg->src_addr; mchan 861 drivers/dma/mpc512x_dma.c mchan->src_tcd_nunits = cfg->src_maxburst; mchan 862 drivers/dma/mpc512x_dma.c mchan->swidth = cfg->src_addr_width; mchan 863 drivers/dma/mpc512x_dma.c mchan->dst_per_paddr = cfg->dst_addr; mchan 864 drivers/dma/mpc512x_dma.c mchan->dst_tcd_nunits = cfg->dst_maxburst; mchan 865 drivers/dma/mpc512x_dma.c mchan->dwidth = cfg->dst_addr_width; mchan 868 drivers/dma/mpc512x_dma.c if (mchan->src_tcd_nunits == 0) mchan 869 drivers/dma/mpc512x_dma.c mchan->src_tcd_nunits = 1; mchan 870 drivers/dma/mpc512x_dma.c if (mchan->dst_tcd_nunits == 0) mchan 871 drivers/dma/mpc512x_dma.c mchan->dst_tcd_nunits = 1; mchan 873 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 880 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan = dma_chan_to_mpc_dma_chan(chan); mchan 885 drivers/dma/mpc512x_dma.c spin_lock_irqsave(&mchan->lock, flags); mchan 888 drivers/dma/mpc512x_dma.c list_splice_tail_init(&mchan->prepared, &mchan->free); mchan 889 drivers/dma/mpc512x_dma.c list_splice_tail_init(&mchan->queued, &mchan->free); mchan 890 drivers/dma/mpc512x_dma.c list_splice_tail_init(&mchan->active, &mchan->free); mchan 892 drivers/dma/mpc512x_dma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 903 drivers/dma/mpc512x_dma.c struct mpc_dma_chan *mchan; mchan 997 drivers/dma/mpc512x_dma.c mchan = &mdma->channels[i]; mchan 999 drivers/dma/mpc512x_dma.c mchan->chan.device = dma; mchan 1000 drivers/dma/mpc512x_dma.c dma_cookie_init(&mchan->chan); mchan 1002 drivers/dma/mpc512x_dma.c INIT_LIST_HEAD(&mchan->free); mchan 1003 drivers/dma/mpc512x_dma.c INIT_LIST_HEAD(&mchan->prepared); mchan 1004 drivers/dma/mpc512x_dma.c INIT_LIST_HEAD(&mchan->queued); mchan 1005 drivers/dma/mpc512x_dma.c INIT_LIST_HEAD(&mchan->active); mchan 1006 drivers/dma/mpc512x_dma.c INIT_LIST_HEAD(&mchan->completed); mchan 1008 drivers/dma/mpc512x_dma.c spin_lock_init(&mchan->lock); mchan 1009 drivers/dma/mpc512x_dma.c list_add_tail(&mchan->chan.device_node, &dma->channels); mchan 114 drivers/dma/qcom/hidma.c static void hidma_process_completed(struct hidma_chan *mchan) mchan 116 drivers/dma/qcom/hidma.c struct dma_device *ddev = mchan->chan.device; mchan 128 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 129 drivers/dma/qcom/hidma.c list_splice_tail_init(&mchan->completed, &list); mchan 130 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 143 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 145 drivers/dma/qcom/hidma.c mchan->last_success = last_cookie; mchan 152 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 158 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 159 drivers/dma/qcom/hidma.c list_move(&mdesc->node, &mchan->free); mchan 160 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 174 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(mdesc->desc.chan); mchan 175 drivers/dma/qcom/hidma.c struct dma_device *ddev = mchan->chan.device; mchan 180 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 183 drivers/dma/qcom/hidma.c list_move_tail(&mdesc->node, &mchan->completed); mchan 187 drivers/dma/qcom/hidma.c mchan->running = list_first_entry(&mchan->active, mchan 190 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 192 drivers/dma/qcom/hidma.c hidma_process_completed(mchan); mchan 202 drivers/dma/qcom/hidma.c struct hidma_chan *mchan; mchan 205 drivers/dma/qcom/hidma.c mchan = devm_kzalloc(dmadev->ddev.dev, sizeof(*mchan), GFP_KERNEL); mchan 206 drivers/dma/qcom/hidma.c if (!mchan) mchan 210 drivers/dma/qcom/hidma.c mchan->dma_sig = dma_sig; mchan 211 drivers/dma/qcom/hidma.c mchan->dmadev = dmadev; mchan 212 drivers/dma/qcom/hidma.c mchan->chan.device = ddev; mchan 213 drivers/dma/qcom/hidma.c dma_cookie_init(&mchan->chan); mchan 215 drivers/dma/qcom/hidma.c INIT_LIST_HEAD(&mchan->free); mchan 216 drivers/dma/qcom/hidma.c INIT_LIST_HEAD(&mchan->prepared); mchan 217 drivers/dma/qcom/hidma.c INIT_LIST_HEAD(&mchan->active); mchan 218 drivers/dma/qcom/hidma.c INIT_LIST_HEAD(&mchan->completed); mchan 219 drivers/dma/qcom/hidma.c INIT_LIST_HEAD(&mchan->queued); mchan 221 drivers/dma/qcom/hidma.c spin_lock_init(&mchan->lock); mchan 222 drivers/dma/qcom/hidma.c list_add_tail(&mchan->chan.device_node, &ddev->channels); mchan 237 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(dmach); mchan 238 drivers/dma/qcom/hidma.c struct hidma_dev *dmadev = mchan->dmadev; mchan 243 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, flags); mchan 244 drivers/dma/qcom/hidma.c list_for_each_entry_safe(qdesc, next, &mchan->queued, node) { mchan 246 drivers/dma/qcom/hidma.c list_move_tail(&qdesc->node, &mchan->active); mchan 249 drivers/dma/qcom/hidma.c if (!mchan->running) { mchan 250 drivers/dma/qcom/hidma.c struct hidma_desc *desc = list_first_entry(&mchan->active, mchan 253 drivers/dma/qcom/hidma.c mchan->running = desc; mchan 255 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 282 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(dmach); mchan 289 drivers/dma/qcom/hidma.c is_success = hidma_txn_is_success(cookie, mchan->last_success, mchan 294 drivers/dma/qcom/hidma.c if (mchan->paused && (ret == DMA_IN_PROGRESS)) { mchan 298 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, flags); mchan 299 drivers/dma/qcom/hidma.c if (mchan->running) mchan 300 drivers/dma/qcom/hidma.c runcookie = mchan->running->desc.cookie; mchan 307 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, flags); mchan 319 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(txd->chan); mchan 320 drivers/dma/qcom/hidma.c struct hidma_dev *dmadev = mchan->dmadev; mchan 335 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 338 drivers/dma/qcom/hidma.c list_move_tail(&mdesc->node, &mchan->queued); mchan 343 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 350 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(dmach); mchan 351 drivers/dma/qcom/hidma.c struct hidma_dev *dmadev = mchan->dmadev; mchan 358 drivers/dma/qcom/hidma.c if (mchan->allocated) mchan 371 drivers/dma/qcom/hidma.c rc = hidma_ll_request(dmadev->lldev, mchan->dma_sig, mchan 392 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 393 drivers/dma/qcom/hidma.c list_splice_tail_init(&descs, &mchan->free); mchan 394 drivers/dma/qcom/hidma.c mchan->allocated = true; mchan 395 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 403 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(dmach); mchan 405 drivers/dma/qcom/hidma.c struct hidma_dev *mdma = mchan->dmadev; mchan 409 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 410 drivers/dma/qcom/hidma.c if (!list_empty(&mchan->free)) { mchan 411 drivers/dma/qcom/hidma.c mdesc = list_first_entry(&mchan->free, struct hidma_desc, node); mchan 414 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 425 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 426 drivers/dma/qcom/hidma.c list_add_tail(&mdesc->node, &mchan->prepared); mchan 427 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 436 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(dmach); mchan 438 drivers/dma/qcom/hidma.c struct hidma_dev *mdma = mchan->dmadev; mchan 442 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 443 drivers/dma/qcom/hidma.c if (!list_empty(&mchan->free)) { mchan 444 drivers/dma/qcom/hidma.c mdesc = list_first_entry(&mchan->free, struct hidma_desc, node); mchan 447 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 458 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 459 drivers/dma/qcom/hidma.c list_add_tail(&mdesc->node, &mchan->prepared); mchan 460 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 467 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(chan); mchan 468 drivers/dma/qcom/hidma.c struct hidma_dev *dmadev = to_hidma_dev(mchan->chan.device); mchan 476 drivers/dma/qcom/hidma.c hidma_process_completed(mchan); mchan 478 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 479 drivers/dma/qcom/hidma.c mchan->last_success = 0; mchan 480 drivers/dma/qcom/hidma.c list_splice_init(&mchan->active, &list); mchan 481 drivers/dma/qcom/hidma.c list_splice_init(&mchan->prepared, &list); mchan 482 drivers/dma/qcom/hidma.c list_splice_init(&mchan->completed, &list); mchan 483 drivers/dma/qcom/hidma.c list_splice_init(&mchan->queued, &list); mchan 484 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 502 drivers/dma/qcom/hidma.c list_move(&mdesc->node, &mchan->free); mchan 514 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(chan); mchan 515 drivers/dma/qcom/hidma.c struct hidma_dev *dmadev = to_hidma_dev(mchan->chan.device); mchan 532 drivers/dma/qcom/hidma.c struct hidma_chan *mchan = to_hidma_chan(dmach); mchan 533 drivers/dma/qcom/hidma.c struct hidma_dev *mdma = mchan->dmadev; mchan 541 drivers/dma/qcom/hidma.c spin_lock_irqsave(&mchan->lock, irqflags); mchan 544 drivers/dma/qcom/hidma.c list_splice_tail_init(&mchan->free, &descs); mchan 553 drivers/dma/qcom/hidma.c mchan->allocated = 0; mchan 554 drivers/dma/qcom/hidma.c spin_unlock_irqrestore(&mchan->lock, irqflags); mchan 559 drivers/dma/qcom/hidma.c struct hidma_chan *mchan; mchan 562 drivers/dma/qcom/hidma.c mchan = to_hidma_chan(chan); mchan 563 drivers/dma/qcom/hidma.c dmadev = to_hidma_dev(mchan->chan.device); mchan 564 drivers/dma/qcom/hidma.c if (!mchan->paused) { mchan 568 drivers/dma/qcom/hidma.c mchan->paused = true; mchan 577 drivers/dma/qcom/hidma.c struct hidma_chan *mchan; mchan 581 drivers/dma/qcom/hidma.c mchan = to_hidma_chan(chan); mchan 582 drivers/dma/qcom/hidma.c dmadev = to_hidma_dev(mchan->chan.device); mchan 583 drivers/dma/qcom/hidma.c if (mchan->paused) { mchan 587 drivers/dma/qcom/hidma.c mchan->paused = false; mchan 86 drivers/dma/qcom/hidma_dbg.c struct hidma_chan *mchan = s->private; mchan 88 drivers/dma/qcom/hidma_dbg.c struct hidma_dev *dmadev = mchan->dmadev; mchan 91 drivers/dma/qcom/hidma_dbg.c seq_printf(s, "paused=%u\n", mchan->paused); mchan 92 drivers/dma/qcom/hidma_dbg.c seq_printf(s, "dma_sig=%u\n", mchan->dma_sig); mchan 94 drivers/dma/qcom/hidma_dbg.c list_for_each_entry(mdesc, &mchan->prepared, node) mchan 95 drivers/dma/qcom/hidma_dbg.c hidma_ll_chstats(s, mchan->dmadev->lldev, mdesc->tre_ch); mchan 98 drivers/dma/qcom/hidma_dbg.c list_for_each_entry(mdesc, &mchan->active, node) mchan 99 drivers/dma/qcom/hidma_dbg.c hidma_ll_chstats(s, mchan->dmadev->lldev, mdesc->tre_ch); mchan 102 drivers/dma/qcom/hidma_dbg.c list_for_each_entry(mdesc, &mchan->completed, node) mchan 103 drivers/dma/qcom/hidma_dbg.c hidma_ll_chstats(s, mchan->dmadev->lldev, mdesc->tre_ch); mchan 105 drivers/dma/qcom/hidma_dbg.c hidma_ll_devstats(s, mchan->dmadev->lldev); mchan 77 drivers/mailbox/hi3660-mailbox.c struct hi3660_chan_info mchan[MBOX_CHAN_MAX]; mchan 90 drivers/mailbox/hi3660-mailbox.c struct hi3660_chan_info *mchan = &mbox->mchan[ch]; mchan 108 drivers/mailbox/hi3660-mailbox.c writel(BIT(mchan->ack_irq), base + MBOX_ICLR_REG); mchan 138 drivers/mailbox/hi3660-mailbox.c struct hi3660_chan_info *mchan = &mbox->mchan[ch]; mchan 145 drivers/mailbox/hi3660-mailbox.c writel(BIT(mchan->ack_irq), base + MBOX_SRC_REG); mchan 149 drivers/mailbox/hi3660-mailbox.c if (val & BIT(mchan->ack_irq)) mchan 179 drivers/mailbox/hi3660-mailbox.c struct hi3660_chan_info *mchan = &mbox->mchan[ch]; mchan 190 drivers/mailbox/hi3660-mailbox.c writel_relaxed(~BIT(mchan->dst_irq), base + MBOX_IMASK_REG); mchan 193 drivers/mailbox/hi3660-mailbox.c writel_relaxed(BIT(mchan->dst_irq), base + MBOX_DST_REG); mchan 203 drivers/mailbox/hi3660-mailbox.c writel(BIT(mchan->ack_irq), base + MBOX_SEND_REG); mchan 216 drivers/mailbox/hi3660-mailbox.c struct hi3660_chan_info *mchan; mchan 224 drivers/mailbox/hi3660-mailbox.c mchan = &mbox->mchan[ch]; mchan 225 drivers/mailbox/hi3660-mailbox.c mchan->dst_irq = spec->args[1]; mchan 226 drivers/mailbox/hi3660-mailbox.c mchan->ack_irq = spec->args[2]; mchan 82 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox_chan *mchan; mchan 111 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox_chan *mchan = chan->con_priv; mchan 112 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox *mbox = mchan->parent; mchan 118 drivers/mailbox/hi6220-mailbox.c state = readl(mbox->base + MBOX_MODE_REG(mchan->slot)); mchan 124 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox_chan *mchan = chan->con_priv; mchan 125 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox *mbox = mchan->parent; mchan 126 drivers/mailbox/hi6220-mailbox.c unsigned int slot = mchan->slot; mchan 131 drivers/mailbox/hi6220-mailbox.c mchan->dir = MBOX_TX; mchan 144 drivers/mailbox/hi6220-mailbox.c writel(BIT(mchan->dst_irq), DST_INT_RAW_REG(mbox->ipc)); mchan 151 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox_chan *mchan; mchan 174 drivers/mailbox/hi6220-mailbox.c mchan = chan->con_priv; mchan 175 drivers/mailbox/hi6220-mailbox.c if (mchan->dir == MBOX_TX) mchan 180 drivers/mailbox/hi6220-mailbox.c MBOX_DATA_REG(mchan->slot) + i * 4); mchan 186 drivers/mailbox/hi6220-mailbox.c writel(BIT(mchan->ack_irq), ACK_INT_CLR_REG(mbox->ipc)); mchan 187 drivers/mailbox/hi6220-mailbox.c mbox_set_state(mbox, mchan->slot, MBOX_STATE_IDLE); mchan 195 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox_chan *mchan = chan->con_priv; mchan 196 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox *mbox = mchan->parent; mchan 198 drivers/mailbox/hi6220-mailbox.c mchan->dir = 0; mchan 201 drivers/mailbox/hi6220-mailbox.c writel(BIT(mchan->ack_irq), ACK_INT_ENA_REG(mbox->ipc)); mchan 207 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox_chan *mchan = chan->con_priv; mchan 208 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox *mbox = mchan->parent; mchan 211 drivers/mailbox/hi6220-mailbox.c writel(BIT(mchan->ack_irq), ACK_INT_DIS_REG(mbox->ipc)); mchan 212 drivers/mailbox/hi6220-mailbox.c mbox->irq_map_chan[mchan->ack_irq] = NULL; mchan 226 drivers/mailbox/hi6220-mailbox.c struct hi6220_mbox_chan *mchan; mchan 248 drivers/mailbox/hi6220-mailbox.c mchan = chan->con_priv; mchan 249 drivers/mailbox/hi6220-mailbox.c mchan->dst_irq = dst_irq; mchan 250 drivers/mailbox/hi6220-mailbox.c mchan->ack_irq = ack_irq; mchan 276 drivers/mailbox/hi6220-mailbox.c mbox->mchan = devm_kcalloc(dev, mchan 277 drivers/mailbox/hi6220-mailbox.c mbox->chan_num, sizeof(*mbox->mchan), GFP_KERNEL); mchan 278 drivers/mailbox/hi6220-mailbox.c if (!mbox->mchan) mchan 319 drivers/mailbox/hi6220-mailbox.c mbox->chan[i].con_priv = &mbox->mchan[i]; mchan 322 drivers/mailbox/hi6220-mailbox.c mbox->mchan[i].parent = mbox; mchan 323 drivers/mailbox/hi6220-mailbox.c mbox->mchan[i].slot = i; mchan 151 drivers/mailbox/zynqmp-ipi-mailbox.c struct zynqmp_ipi_mchan *mchan; mchan 162 drivers/mailbox/zynqmp-ipi-mailbox.c mchan = &ipi_mbox->mchans[IPI_MB_CHNL_RX]; mchan 167 drivers/mailbox/zynqmp-ipi-mailbox.c if (mchan->is_opened) { mchan 168 drivers/mailbox/zynqmp-ipi-mailbox.c msg = mchan->rx_buf; mchan 169 drivers/mailbox/zynqmp-ipi-mailbox.c msg->len = mchan->req_buf_size; mchan 170 drivers/mailbox/zynqmp-ipi-mailbox.c memcpy_fromio(msg->data, mchan->req_buf, mchan 191 drivers/mailbox/zynqmp-ipi-mailbox.c struct zynqmp_ipi_mchan *mchan = chan->con_priv; mchan 205 drivers/mailbox/zynqmp-ipi-mailbox.c if (mchan->chan_type == IPI_MB_CHNL_TX) { mchan 231 drivers/mailbox/zynqmp-ipi-mailbox.c struct zynqmp_ipi_mchan *mchan = chan->con_priv; mchan 241 drivers/mailbox/zynqmp-ipi-mailbox.c if (mchan->chan_type == IPI_MB_CHNL_TX) { mchan 269 drivers/mailbox/zynqmp-ipi-mailbox.c struct zynqmp_ipi_mchan *mchan = chan->con_priv; mchan 279 drivers/mailbox/zynqmp-ipi-mailbox.c if (mchan->chan_type == IPI_MB_CHNL_TX) { mchan 281 drivers/mailbox/zynqmp-ipi-mailbox.c if (msg && msg->len > mchan->req_buf_size) { mchan 283 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->chan_type, (unsigned int)msg->len, mchan 284 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->req_buf_size); mchan 288 drivers/mailbox/zynqmp-ipi-mailbox.c memcpy_toio(mchan->req_buf, msg->data, msg->len); mchan 294 drivers/mailbox/zynqmp-ipi-mailbox.c if (msg && msg->len > mchan->resp_buf_size) { mchan 296 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->chan_type, (unsigned int)msg->len, mchan 297 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf_size); mchan 301 drivers/mailbox/zynqmp-ipi-mailbox.c memcpy_toio(mchan->resp_buf, msg->data, msg->len); mchan 320 drivers/mailbox/zynqmp-ipi-mailbox.c struct zynqmp_ipi_mchan *mchan = chan->con_priv; mchan 326 drivers/mailbox/zynqmp-ipi-mailbox.c if (mchan->is_opened) mchan 330 drivers/mailbox/zynqmp-ipi-mailbox.c nchan_type = (mchan->chan_type + 1) % 2; mchan 344 drivers/mailbox/zynqmp-ipi-mailbox.c if (mchan->chan_type == IPI_MB_CHNL_RX) { mchan 348 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->is_opened = 1; mchan 362 drivers/mailbox/zynqmp-ipi-mailbox.c struct zynqmp_ipi_mchan *mchan = chan->con_priv; mchan 367 drivers/mailbox/zynqmp-ipi-mailbox.c if (!mchan->is_opened) mchan 371 drivers/mailbox/zynqmp-ipi-mailbox.c chan_type = mchan->chan_type; mchan 383 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->is_opened = 0; mchan 476 drivers/mailbox/zynqmp-ipi-mailbox.c struct zynqmp_ipi_mchan *mchan; mchan 500 drivers/mailbox/zynqmp-ipi-mailbox.c mchan = &ipi_mbox->mchans[IPI_MB_CHNL_TX]; mchan 504 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->req_buf_size = resource_size(&res); mchan 505 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->req_buf = devm_ioremap(mdev, res.start, mchan 506 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->req_buf_size); mchan 507 drivers/mailbox/zynqmp-ipi-mailbox.c if (IS_ERR(mchan->req_buf)) { mchan 509 drivers/mailbox/zynqmp-ipi-mailbox.c ret = PTR_ERR(mchan->req_buf); mchan 520 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf_size = resource_size(&res); mchan 521 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf = devm_ioremap(mdev, res.start, mchan 522 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf_size); mchan 523 drivers/mailbox/zynqmp-ipi-mailbox.c if (IS_ERR(mchan->resp_buf)) { mchan 525 drivers/mailbox/zynqmp-ipi-mailbox.c ret = PTR_ERR(mchan->resp_buf); mchan 532 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->rx_buf = devm_kzalloc(mdev, mchan 533 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf_size + mchan 536 drivers/mailbox/zynqmp-ipi-mailbox.c if (!mchan->rx_buf) mchan 539 drivers/mailbox/zynqmp-ipi-mailbox.c mchan = &ipi_mbox->mchans[IPI_MB_CHNL_RX]; mchan 543 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->req_buf_size = resource_size(&res); mchan 544 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->req_buf = devm_ioremap(mdev, res.start, mchan 545 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->req_buf_size); mchan 546 drivers/mailbox/zynqmp-ipi-mailbox.c if (IS_ERR(mchan->req_buf)) { mchan 548 drivers/mailbox/zynqmp-ipi-mailbox.c ret = PTR_ERR(mchan->req_buf); mchan 559 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf_size = resource_size(&res); mchan 560 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf = devm_ioremap(mdev, res.start, mchan 561 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf_size); mchan 562 drivers/mailbox/zynqmp-ipi-mailbox.c if (IS_ERR(mchan->resp_buf)) { mchan 564 drivers/mailbox/zynqmp-ipi-mailbox.c ret = PTR_ERR(mchan->resp_buf); mchan 571 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->rx_buf = devm_kzalloc(mdev, mchan 572 drivers/mailbox/zynqmp-ipi-mailbox.c mchan->resp_buf_size + mchan 575 drivers/mailbox/zynqmp-ipi-mailbox.c if (!mchan->rx_buf)