Lines Matching defs:dev
553 * @dev: The device structure.
596 struct device *dev;
630 return &d40c->chan.dev->device;
649 #define d40_err(dev, format, arg...) \
650 dev_err(dev, "[%s] " format, __func__, ## arg)
694 d40d->lli_pool.dma_addr = dma_map_single(d40c->base->dev,
699 if (dma_mapping_error(d40c->base->dev,
714 dma_unmap_single(d40c->base->dev, d40d->lli_pool.dma_addr,
949 dma_sync_single_range_for_device(chan->base->dev,
1453 pm_runtime_get_sync(d40c->base->dev);
1457 pm_runtime_mark_last_busy(d40c->base->dev);
1458 pm_runtime_put_autosuspend(d40c->base->dev);
1478 pm_runtime_get_sync(d40c->base->dev);
1484 pm_runtime_mark_last_busy(d40c->base->dev);
1485 pm_runtime_put_autosuspend(d40c->base->dev);
1523 pm_runtime_get_sync(d40c->base->dev);
1586 pm_runtime_mark_last_busy(d40c->base->dev);
1587 pm_runtime_put_autosuspend(d40c->base->dev);
1715 d40_err(base->dev, "IRQ chan: %ld offset %d idx %d\n",
2045 pm_runtime_get_sync(d40c->base->dev);
2060 pm_runtime_mark_last_busy(d40c->base->dev);
2061 pm_runtime_put_autosuspend(d40c->base->dev);
2068 pm_runtime_mark_last_busy(d40c->base->dev);
2069 pm_runtime_put_autosuspend(d40c->base->dev);
2188 dma_sync_single_for_device(chan->base->dev, desc->lli_pool.dma_addr,
2439 pm_runtime_get_sync(d40c->base->dev);
2471 pm_runtime_mark_last_busy(d40c->base->dev);
2472 pm_runtime_put_autosuspend(d40c->base->dev);
2617 pm_runtime_get_sync(d40c->base->dev);
2623 pm_runtime_mark_last_busy(d40c->base->dev);
2624 pm_runtime_put_autosuspend(d40c->base->dev);
2626 pm_runtime_mark_last_busy(d40c->base->dev);
2627 pm_runtime_put_autosuspend(d40c->base->dev);
2704 dev_dbg(d40c->base->dev,
2720 dev_dbg(d40c->base->dev,
2732 dev_err(d40c->base->dev,
2739 dev_err(d40c->base->dev, "no address supplied\n");
2744 dev_err(d40c->base->dev,
2792 dev_dbg(d40c->base->dev,
2837 static void d40_ops_init(struct d40_base *base, struct dma_device *dev)
2839 if (dma_has_cap(DMA_SLAVE, dev->cap_mask)) {
2840 dev->device_prep_slave_sg = d40_prep_slave_sg;
2841 dev->directions = BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV);
2844 if (dma_has_cap(DMA_MEMCPY, dev->cap_mask)) {
2845 dev->device_prep_dma_memcpy = d40_prep_memcpy;
2846 dev->directions = BIT(DMA_MEM_TO_MEM);
2851 dev->copy_align = DMAENGINE_ALIGN_4_BYTES;
2854 if (dma_has_cap(DMA_CYCLIC, dev->cap_mask))
2855 dev->device_prep_dma_cyclic = dma40_prep_dma_cyclic;
2857 dev->device_alloc_chan_resources = d40_alloc_chan_resources;
2858 dev->device_free_chan_resources = d40_free_chan_resources;
2859 dev->device_issue_pending = d40_issue_pending;
2860 dev->device_tx_status = d40_tx_status;
2861 dev->device_config = d40_set_runtime_config;
2862 dev->device_pause = d40_pause;
2863 dev->device_resume = d40_resume;
2864 dev->device_terminate_all = d40_terminate_all;
2865 dev->residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;
2866 dev->dev = base->dev;
2886 d40_err(base->dev, "Failed to register slave channels\n");
2901 d40_err(base->dev,
2918 d40_err(base->dev,
2929 static int dma40_suspend(struct device *dev)
2931 struct d40_base *base = dev_get_drvdata(dev);
2934 ret = pm_runtime_force_suspend(dev);
2943 static int dma40_resume(struct device *dev)
2945 struct d40_base *base = dev_get_drvdata(dev);
2954 return pm_runtime_force_resume(dev);
3008 static int dma40_runtime_suspend(struct device *dev)
3010 struct d40_base *base = dev_get_drvdata(dev);
3022 static int dma40_runtime_resume(struct device *dev)
3024 struct d40_base *base = dev_get_drvdata(dev);
3098 dev_info(base->dev, "%d of %d physical DMA channels available\n",
3108 dev_info(base->dev,
3138 struct stedma40_platform_data *plat_data = dev_get_platdata(&pdev->dev);
3139 struct device *dev = &pdev->dev;
3152 clk = devm_clk_get_enabled(dev, NULL);
3170 d40_err(dev, "Unknown hardware! No PrimeCell ID\n");
3174 d40_err(dev, "Unknown designer! Got %x wanted %x\n",
3190 d40_err(dev, "hardware revision: %d is not supported", rev);
3208 dev_info(dev,
3212 base = devm_kzalloc(dev,
3227 base->dev = dev;
3261 base->phy_res = devm_kcalloc(dev, num_phy_chans,
3267 base->lookup_phy_chans = devm_kcalloc(dev, num_phy_chans,
3273 base->lookup_log_chans = devm_kcalloc(dev, num_log_chans,
3279 base->reg_val_backup_chan = devm_kmalloc_array(dev, base->num_phy_chans,
3285 base->lcla_pool.alloc_map = devm_kcalloc(dev, num_phy_chans
3292 base->regs_interrupt = devm_kmalloc_array(dev, base->gen_dmac.il_size,
3304 ret = devm_add_action_or_reset(dev, d40_drop_kmem_cache_action,
3394 d40_err(base->dev, "Failed to allocate %d pages.\n",
3418 dev_warn(base->dev,
3434 pool->dma_addr = dma_map_single(base->dev, pool->base,
3437 if (dma_mapping_error(base->dev, pool->dma_addr)) {
3451 static int __init d40_of_probe(struct device *dev,
3458 pdata = devm_kzalloc(dev, sizeof(*pdata), GFP_KERNEL);
3471 d40_err(dev,
3486 d40_err(dev,
3497 dev->platform_data = pdata;
3504 struct device *dev = &pdev->dev;
3505 struct device_node *np = pdev->dev.of_node;
3514 if (d40_of_probe(dev, np)) {
3533 dev_err(dev, "no LCPA SRAM node\n");
3540 dev_err(dev, "no LCPA SRAM resource\n");
3545 dev_info(dev, "found LCPA SRAM at %pad, size %pa\n",
3551 dev_warn(dev,
3557 base->lcpa_base = devm_ioremap(dev, base->phy_lcpa, base->lcpa_size);
3560 d40_err(dev, "Failed to ioremap LCPA region\n");
3569 d40_err(dev,
3573 base->lcla_pool.base = devm_ioremap(dev, res->start,
3577 d40_err(dev, "Failed to ioremap LCLA region\n");
3585 d40_err(dev, "Failed to allocate LCLA area\n");
3600 d40_err(dev, "No IRQ defined\n");
3606 base->lcpa_regulator = regulator_get(base->dev, "lcla_esram");
3608 d40_err(dev, "Failed to get lcpa_regulator\n");
3616 d40_err(dev,
3626 pm_runtime_irq_safe(base->dev);
3627 pm_runtime_set_autosuspend_delay(base->dev, DMA40_AUTOSUSPEND_DELAY);
3628 pm_runtime_use_autosuspend(base->dev);
3629 pm_runtime_mark_last_busy(base->dev);
3630 pm_runtime_set_active(base->dev);
3631 pm_runtime_enable(base->dev);
3637 ret = dma_set_max_seg_size(base->dev, STEDMA40_MAX_SEG_SIZE);
3639 d40_err(dev, "Failed to set dma max seg size\n");
3647 dev_err(dev,
3652 dev_info(base->dev, "initialized\n");
3657 dma_unmap_single(base->dev, base->lcla_pool.dma_addr,
3671 pm_runtime_disable(base->dev);
3674 d40_err(dev, "probe failed\n");