Lines Matching full:edma

3  * drivers/dma/fsl-edma.c
8 * Driver for the Freescale eDMA engine with flexible channel multiplexing
9 * capability for DMA request sources. The eDMA block can be found on some
13 #include <dt-bindings/dma/fsl-edma.h>
25 #include "fsl-edma-common.h"
150 return fsl_edma_tx_handler(irq, fsl_chan->edma); in fsl_edma2_tx_handler()
353 fsl_edma->txirq = platform_get_irq_byname(pdev, "edma-tx"); in fsl_edma_irq_init()
357 fsl_edma->errirq = platform_get_irq_byname(pdev, "edma-err"); in fsl_edma_irq_init()
363 fsl_edma_irq_handler, 0, "eDMA", fsl_edma); in fsl_edma_irq_init()
365 dev_err(&pdev->dev, "Can't register eDMA IRQ.\n"); in fsl_edma_irq_init()
370 fsl_edma_tx_handler, 0, "eDMA tx", fsl_edma); in fsl_edma_irq_init()
372 dev_err(&pdev->dev, "Can't register eDMA tx IRQ.\n"); in fsl_edma_irq_init()
377 fsl_edma_err_handler, 0, "eDMA err", fsl_edma); in fsl_edma_irq_init()
379 dev_err(&pdev->dev, "Can't register eDMA err IRQ.\n"); in fsl_edma_irq_init()
425 return dev_err_probe(&pdev->dev, ret, "Can't register eDMA err IRQ.\n"); in fsl_edma3_irq_init()
449 fsl_edma3_tx_0_15_handler, 0, "eDMA tx0_15", in fsl_edma3_or_irq_init()
453 "Can't register eDMA tx0_15 IRQ.\n"); in fsl_edma3_or_irq_init()
458 "eDMA tx16_31", fsl_edma); in fsl_edma3_or_irq_init()
461 "Can't register eDMA tx16_31 IRQ.\n"); in fsl_edma3_or_irq_init()
465 fsl_edma3_or_err_handler, 0, "eDMA err", in fsl_edma3_or_irq_init()
469 "Can't register eDMA err IRQ.\n"); in fsl_edma3_or_irq_init()
501 /* The last IRQ is for eDMA err */ in fsl_edma2_irq_init()
619 { .compatible = "fsl,vf610-edma", .data = &vf610_data},
620 { .compatible = "fsl,ls1028a-edma", .data = &ls1028a_data},
621 { .compatible = "fsl,imx7ulp-edma", .data = &imx7ulp_data},
622 { .compatible = "fsl,imx8qm-edma", .data = &imx8qm_data},
623 { .compatible = "fsl,imx8ulp-edma", .data = &imx8ulp_data},
627 { .compatible = "nxp,s32g2-edma", .data = &s32g2_data},
807 fsl_chan->edma = fsl_edma; in fsl_edma_probe()
832 if (fsl_chan->edma->drvdata->flags & FSL_EDMA_DRV_HAS_CHCLK) in fsl_edma_probe()
888 "Can't register Freescale eDMA engine. (%d)\n", ret); in fsl_edma_probe()
897 "Can't register Freescale eDMA of_dma. (%d)\n", ret); in fsl_edma_probe()
971 * eDMA provides the service to others, so it should be suspend late
972 * and resume early. When eDMA suspend, all of the clients should stop
982 .name = "fsl-edma",
1002 MODULE_ALIAS("platform:fsl-edma");
1003 MODULE_DESCRIPTION("Freescale eDMA engine driver");