aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/layerscape/patches-5.4/806-dma-0009-MLK-16327-1-dma-fsl-edma-v3-make-exclusive-channel-n.patch
diff options
context:
space:
mode:
authorDaniel Golle <daniel@makrotopia.org>2022-03-21 01:16:48 +0000
committerDaniel Golle <daniel@makrotopia.org>2022-03-21 13:11:56 +0000
commit786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186 (patch)
tree926fecb2b1f6ce1e42ba7ef4c7aab8e68dfd214c /target/linux/layerscape/patches-5.4/806-dma-0009-MLK-16327-1-dma-fsl-edma-v3-make-exclusive-channel-n.patch
parent9470160c350d15f765c33d6c1db15d6c4709a64c (diff)
downloadupstream-786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186.tar.gz
upstream-786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186.tar.bz2
upstream-786bf7fdaca4c75e7eba6e9aa3a8b5775fd21186.zip
kernel: delete Linux 5.4 config and patches
As the upcoming release will be based on Linux 5.10 only, remove all kernel configuration as well as patches for Linux 5.4. There were no targets still actively using Linux 5.4. Signed-off-by: Daniel Golle <daniel@makrotopia.org> (cherry picked from commit 3a14580411adfb75f9a44eded9f41245b9e44606)
Diffstat (limited to 'target/linux/layerscape/patches-5.4/806-dma-0009-MLK-16327-1-dma-fsl-edma-v3-make-exclusive-channel-n.patch')
-rw-r--r--target/linux/layerscape/patches-5.4/806-dma-0009-MLK-16327-1-dma-fsl-edma-v3-make-exclusive-channel-n.patch128
1 files changed, 0 insertions, 128 deletions
diff --git a/target/linux/layerscape/patches-5.4/806-dma-0009-MLK-16327-1-dma-fsl-edma-v3-make-exclusive-channel-n.patch b/target/linux/layerscape/patches-5.4/806-dma-0009-MLK-16327-1-dma-fsl-edma-v3-make-exclusive-channel-n.patch
deleted file mode 100644
index 6c770ed4df..0000000000
--- a/target/linux/layerscape/patches-5.4/806-dma-0009-MLK-16327-1-dma-fsl-edma-v3-make-exclusive-channel-n.patch
+++ /dev/null
@@ -1,128 +0,0 @@
-From c5a5706b8a86660505ef0dc863a85596437ca49b Mon Sep 17 00:00:00 2001
-From: Robin Gong <yibin.gong@nxp.com>
-Date: Wed, 30 Aug 2017 18:51:16 +0800
-Subject: [PATCH] MLK-16327-1: dma: fsl-edma-v3: make exclusive channel name
- for all edma channels
-
- Since there are multi edmav3 instances on i.mx8, every edma channel name
-is better unique.But so far, all edma channel name is 'edma-channel(id)-
-tx',thus some edma channels which share the same channel id but different
-edma instance will show the same channel name in kernel and this is not
-friendly to debug in kernel.
- Now the edma channel name(interrupt-names property) is define in dts
-as below:
- "edmaX-chanX-Xx"
- | | |---> receive/transmit, r or t
- | |---> channel id, the max number is 32
- |---> edma controller instance, 0, 1, 2,..etc
-and get below correct name with 'cat /proc/interrupts':
- 43: 0 0 0 0 GICv3 466 Level edma0-chan8-rx
- 44: 0 0 0 0 GICv3 467 Level edma0-chan9-tx
- 45: 79 0 0 0 GICv3 468 Level edma0-chan10-rx
- 46: 311 0 0 0 GICv3 469 Level edma0-chan11-tx
- 47: 0 0 0 0 GICv3 470 Level edma0-chan12-rx
- 48: 0 0 0 0 GICv3 471 Level edma0-chan13-tx
- 49: 0 0 0 0 GICv3 472 Level edma0-chan14-rx
- 50: 0 0 0 0 GICv3 473 Level edma0-chan15-tx
- 51: 0 0 0 0 GICv3 406 Level edma2-chan0-tx
- 52: 0 0 0 0 GICv3 407 Level edma2-chan1-tx
- 53: 0 0 0 0 GICv3 408 Level edma2-chan2-tx
- 54: 0 0 0 0 GICv3 409 Level edma2-chan3-tx
- 55: 0 0 0 0 GICv3 410 Level edma2-chan4-tx
- 56: 0 0 0 0 GICv3 411 Level edma2-chan5-tx
- 57: 0 0 0 0 GICv3 442 Level edma2-chan6-rx, edma2-chan7-tx
-
-Signed-off-by: Robin Gong <yibin.gong@nxp.com>
-Reviewed-by: Shengjiu Wang <shengjiu.wang@nxp.com>
-(cherry picked from commit af8e197a92c9c024ec4fbfcf543d744e81748773)
----
- .../devicetree/bindings/dma/fsl-edma-v3.txt | 12 +++++---
- drivers/dma/fsl-edma-v3.c | 35 ++++++++++++++++++++--
- 2 files changed, 41 insertions(+), 6 deletions(-)
-
---- a/Documentation/devicetree/bindings/dma/fsl-edma-v3.txt
-+++ b/Documentation/devicetree/bindings/dma/fsl-edma-v3.txt
-@@ -12,8 +12,12 @@ Required properties:
- - reg : Specifies base physical address(s) and size of the eDMA channel registers.
- Each eDMA channel has separated register's address and size.
- - interrupts : A list of interrupt-specifiers, each channel has one interrupt.
--- interrupt-names : Should contain:
-- "edma-chan12-tx" - the channel12 transmission interrupt
-+- interrupt-names : Should contain below template:
-+ "edmaX-chanX-Xx"
-+ | | |---> receive/transmit, r or t
-+ | |---> channel id, the max number is 32
-+ |---> edma controller instance, 0, 1, 2,..etc
-+
- - #dma-cells : Must be <3>.
- The 1st cell specifies the channel ID.
- The 2nd cell specifies the channel priority.
-@@ -40,8 +44,8 @@ edma0: dma-controller@40018000 {
- <GIC_SPI 435 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 436 IRQ_TYPE_LEVEL_HIGH>,
- <GIC_SPI 437 IRQ_TYPE_LEVEL_HIGH>;
-- interrupt-names = "edma-chan12-tx", "edma-chan13-tx",
-- "edma-chan14-tx", "edma-chan15-tx";
-+ interrupt-names = "edma0-chan12-rx", "edma0-chan13-tx",
-+ "edma0-chan14-rx", "edma0-chan15-tx";
- status = "okay";
- };
-
---- a/drivers/dma/fsl-edma-v3.c
-+++ b/drivers/dma/fsl-edma-v3.c
-@@ -107,6 +107,10 @@
- #define ARGS_REMOTE BIT(1)
- #define ARGS_DFIFO BIT(2)
-
-+/* channel name template define in dts */
-+#define CHAN_PREFIX "edma0-chan"
-+#define CHAN_POSFIX "-tx"
-+
- struct fsl_edma3_hw_tcd {
- __le32 saddr;
- __le16 soff;
-@@ -806,7 +810,10 @@ static int fsl_edma3_probe(struct platfo
- INIT_LIST_HEAD(&fsl_edma3->dma_dev.channels);
- for (i = 0; i < fsl_edma3->n_chans; i++) {
- struct fsl_edma3_chan *fsl_chan = &fsl_edma3->chans[i];
-- char *txirq_name = fsl_chan->txirq_name;
-+ const char *txirq_name = fsl_chan->txirq_name;
-+ char chanid[3], id_len = 0;
-+ char *p = chanid;
-+ unsigned long val;
-
- fsl_chan->edma3 = fsl_edma3;
- /* Get per channel membase */
-@@ -819,7 +826,31 @@ static int fsl_edma3_probe(struct platfo
- * channel0:0x10000, channel1:0x20000... total 32 channels
- */
- fsl_chan->hw_chanid = (res->start >> 16) & 0x1f;
-- sprintf(txirq_name, "edma-chan%d-tx", fsl_chan->hw_chanid);
-+
-+ ret = of_property_read_string_index(np, "interrupt-names", i,
-+ &txirq_name);
-+ if (ret) {
-+ dev_err(&pdev->dev, "read interrupt-names fail.\n");
-+ return ret;
-+ }
-+ /* Get channel id length from dts, one-digit or double-digit */
-+ id_len = strlen(txirq_name) - strlen(CHAN_PREFIX) -
-+ strlen(CHAN_POSFIX);
-+ if (id_len > 2) {
-+ dev_err(&pdev->dev, "%s is edmaX-chanX-tx in dts?\n",
-+ res->name);
-+ return -EINVAL;
-+ }
-+ /* Grab channel id from txirq_name */
-+ strncpy(p, txirq_name + strlen(CHAN_PREFIX), id_len);
-+ *(p + id_len) = '\0';
-+
-+ /* check if the channel id match well with hw_chanid */
-+ ret = kstrtoul(chanid, 0, &val);
-+ if (ret || val != fsl_chan->hw_chanid) {
-+ dev_err(&pdev->dev, "%s,wrong id?\n", txirq_name);
-+ return -EINVAL;
-+ }
-
- /* request channel irq */
- fsl_chan->txirq = platform_get_irq_byname(pdev, txirq_name);