aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/806-dma-0028-dmaengine-fsl-edma-Add-eDMA-support-for-QorIQ-LS1028.patch
diff options
context:
space:
mode:
Diffstat (limited to 'target/linux/layerscape/patches-5.4/806-dma-0028-dmaengine-fsl-edma-Add-eDMA-support-for-QorIQ-LS1028.patch')
-rw-r--r--target/linux/layerscape/patches-5.4/806-dma-0028-dmaengine-fsl-edma-Add-eDMA-support-for-QorIQ-LS1028.patch94
1 files changed, 0 insertions, 94 deletions
diff --git a/target/linux/layerscape/patches-5.4/806-dma-0028-dmaengine-fsl-edma-Add-eDMA-support-for-QorIQ-LS1028.patch b/target/linux/layerscape/patches-5.4/806-dma-0028-dmaengine-fsl-edma-Add-eDMA-support-for-QorIQ-LS1028.patch
deleted file mode 100644
index 4707eccdab..0000000000
--- a/target/linux/layerscape/patches-5.4/806-dma-0028-dmaengine-fsl-edma-Add-eDMA-support-for-QorIQ-LS1028.patch
+++ /dev/null
@@ -1,94 +0,0 @@
-From 83d2cb1c64c5a34f23b34fcee715a68be230c232 Mon Sep 17 00:00:00 2001
-From: Peng Ma <peng.ma@nxp.com>
-Date: Thu, 12 Dec 2019 03:38:10 +0000
-Subject: [PATCH] dmaengine: fsl-edma: Add eDMA support for QorIQ LS1028A
- platform
-
-Our platforms(such as LS1021A, LS1012A, LS1043A, LS1046A, LS1028A) with
-below registers(CHCFG0 - CHCFG15) of eDMA as follows:
-*-----------------------------------------------------------*
-| Offset | OTHERS | LS1028A |
-|--------------|--------------------|-----------------------|
-| 0x0 | CHCFG0 | CHCFG3 |
-|--------------|--------------------|-----------------------|
-| 0x1 | CHCFG1 | CHCFG2 |
-|--------------|--------------------|-----------------------|
-| 0x2 | CHCFG2 | CHCFG1 |
-|--------------|--------------------|-----------------------|
-| 0x3 | CHCFG3 | CHCFG0 |
-|--------------|--------------------|-----------------------|
-| ... | ...... | ...... |
-|--------------|--------------------|-----------------------|
-| 0xC | CHCFG12 | CHCFG15 |
-|--------------|--------------------|-----------------------|
-| 0xD | CHCFG13 | CHCFG14 |
-|--------------|--------------------|-----------------------|
-| 0xE | CHCFG14 | CHCFG13 |
-|--------------|--------------------|-----------------------|
-| 0xF | CHCFG15 | CHCFG12 |
-*-----------------------------------------------------------*
-
-This patch is to improve edma driver to fit LS1028A platform.
-
-Signed-off-by: Peng Ma <peng.ma@nxp.com>
-Reviewed-by: Robin Gong <yibin.gong@nxp.com>
-Link: https://lore.kernel.org/r/20191212033714.4090-1-peng.ma@nxp.com
-Signed-off-by: Vinod Koul <vkoul@kernel.org>
----
- drivers/dma/fsl-edma-common.c | 5 +++++
- drivers/dma/fsl-edma-common.h | 1 +
- drivers/dma/fsl-edma.c | 8 ++++++++
- 3 files changed, 14 insertions(+)
-
---- a/drivers/dma/fsl-edma-common.c
-+++ b/drivers/dma/fsl-edma-common.c
-@@ -109,10 +109,15 @@ void fsl_edma_chan_mux(struct fsl_edma_c
- u32 ch = fsl_chan->vchan.chan.chan_id;
- void __iomem *muxaddr;
- unsigned int chans_per_mux, ch_off;
-+ int endian_diff[4] = {3, 1, -1, -3};
- u32 dmamux_nr = fsl_chan->edma->drvdata->dmamuxs;
-
- chans_per_mux = fsl_chan->edma->n_chans / dmamux_nr;
- ch_off = fsl_chan->vchan.chan.chan_id % chans_per_mux;
-+
-+ if (fsl_chan->edma->drvdata->mux_swap)
-+ ch_off += endian_diff[ch_off % 4];
-+
- muxaddr = fsl_chan->edma->muxbase[ch / chans_per_mux];
- slot = EDMAMUX_CHCFG_SOURCE(slot);
-
---- a/drivers/dma/fsl-edma-common.h
-+++ b/drivers/dma/fsl-edma-common.h
-@@ -148,6 +148,7 @@ struct fsl_edma_drvdata {
- enum edma_version version;
- u32 dmamuxs;
- bool has_dmaclk;
-+ bool mux_swap;
- int (*setup_irq)(struct platform_device *pdev,
- struct fsl_edma_engine *fsl_edma);
- };
---- a/drivers/dma/fsl-edma.c
-+++ b/drivers/dma/fsl-edma.c
-@@ -241,6 +241,13 @@ static struct fsl_edma_drvdata vf610_dat
- .setup_irq = fsl_edma_irq_init,
- };
-
-+static struct fsl_edma_drvdata ls1028a_data = {
-+ .version = v1,
-+ .dmamuxs = DMAMUX_NR,
-+ .mux_swap = true,
-+ .setup_irq = fsl_edma_irq_init,
-+};
-+
- static struct fsl_edma_drvdata imx7ulp_data = {
- .version = v3,
- .dmamuxs = 1,
-@@ -250,6 +257,7 @@ static struct fsl_edma_drvdata imx7ulp_d
-
- static const struct of_device_id fsl_edma_dt_ids[] = {
- { .compatible = "fsl,vf610-edma", .data = &vf610_data},
-+ { .compatible = "fsl,ls1028a-edma", .data = &ls1028a_data},
- { .compatible = "fsl,imx7ulp-edma", .data = &imx7ulp_data},
- { /* sentinel */ }
- };