{"id":812762,"url":"http://patchwork.ozlabs.org/api/1.2/patches/812762/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-imx/patch/20170912104424.18495-2-peter.ujfalusi@ti.com/","project":{"id":19,"url":"http://patchwork.ozlabs.org/api/1.2/projects/19/?format=json","name":"Linux IMX development","link_name":"linux-imx","list_id":"linux-imx-kernel.lists.patchwork.ozlabs.org","list_email":"linux-imx-kernel@lists.patchwork.ozlabs.org","web_url":null,"scm_url":null,"webscm_url":null,"list_archive_url":"","list_archive_url_format":"","commit_url_format":""},"msgid":"<20170912104424.18495-2-peter.ujfalusi@ti.com>","list_archive_url":null,"date":"2017-09-12T10:44:20","name":"[1/5] dmaengine: edma: Implement protection for invalid max_burst","commit_ref":null,"pull_url":null,"state":"new","archived":false,"hash":"ab639a7f64acbbd53b98cd8d5a98bfb8cfda34de","submitter":{"id":9142,"url":"http://patchwork.ozlabs.org/api/1.2/people/9142/?format=json","name":"Peter Ujfalusi","email":"peter.ujfalusi@ti.com"},"delegate":null,"mbox":"http://patchwork.ozlabs.org/project/linux-imx/patch/20170912104424.18495-2-peter.ujfalusi@ti.com/mbox/","series":[{"id":2660,"url":"http://patchwork.ozlabs.org/api/1.2/series/2660/?format=json","web_url":"http://patchwork.ozlabs.org/project/linux-imx/list/?series=2660","date":"2017-09-12T10:44:20","name":"dmaengine: core/edma/omap-dma: maximum SG len reporting","version":1,"mbox":"http://patchwork.ozlabs.org/series/2660/mbox/"}],"comments":"http://patchwork.ozlabs.org/api/patches/812762/comments/","check":"pending","checks":"http://patchwork.ozlabs.org/api/patches/812762/checks/","tags":{},"related":[],"headers":{"Return-Path":"<linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org>","X-Original-To":"incoming-imx@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming-imx@bilbo.ozlabs.org","Authentication-Results":["ozlabs.org;\n\tspf=none (mailfrom) smtp.mailfrom=lists.infradead.org\n\t(client-ip=65.50.211.133; helo=bombadil.infradead.org;\n\tenvelope-from=linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org;\n\treceiver=<UNKNOWN>)","ozlabs.org; dkim=pass (2048-bit key;\n\tunprotected) header.d=lists.infradead.org\n\theader.i=@lists.infradead.org header.b=\"Ode+7S/A\"; \n\tdkim=fail reason=\"signature verification failed\" (1024-bit key;\n\tunprotected) header.d=ti.com header.i=@ti.com header.b=\"D4EGEbzZ\"; \n\tdkim-atps=neutral"],"Received":["from bombadil.infradead.org (bombadil.infradead.org\n\t[65.50.211.133])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 3xs1dp6Sgbz9s7g\n\tfor <incoming-imx@patchwork.ozlabs.org>;\n\tTue, 12 Sep 2017 20:45:02 +1000 (AEST)","from localhost ([127.0.0.1] helo=bombadil.infradead.org)\n\tby bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux))\n\tid 1drigd-0000OS-VX; Tue, 12 Sep 2017 10:44:59 +0000","from lelnx194.ext.ti.com ([198.47.27.80])\n\tby bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux))\n\tid 1drigZ-0000Kz-5P for linux-arm-kernel@lists.infradead.org;\n\tTue, 12 Sep 2017 10:44:57 +0000","from dflxv15.itg.ti.com ([128.247.5.124])\n\tby lelnx194.ext.ti.com (8.15.1/8.15.1) with ESMTP id v8CAiTQB016598; \n\tTue, 12 Sep 2017 05:44:29 -0500","from DLEE104.ent.ti.com (dlee104.ent.ti.com [157.170.170.34])\n\tby dflxv15.itg.ti.com (8.14.3/8.13.8) with ESMTP id v8CAiT12032305;\n\tTue, 12 Sep 2017 05:44:29 -0500","from DLEE113.ent.ti.com (157.170.170.24) by DLEE104.ent.ti.com\n\t(157.170.170.34) with Microsoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.845.34;\n\tTue, 12 Sep 2017 05:44:29 -0500","from dlep32.itg.ti.com (157.170.170.100) by DLEE113.ent.ti.com\n\t(157.170.170.24) with Microsoft SMTP Server (version=TLS1_0,\n\tcipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.845.34 via Frontend\n\tTransport; Tue, 12 Sep 2017 05:44:29 -0500","from feketebors.ti.com (ileax41-snat.itg.ti.com [10.172.224.153])\n\tby dlep32.itg.ti.com (8.14.3/8.13.8) with ESMTP id v8CAiOu2007788; \n\tTue, 12 Sep 2017 05:44:27 -0500"],"DKIM-Signature":["v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed;\n\td=lists.infradead.org; s=bombadil.20170209; h=Sender:\n\tContent-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post:\n\tList-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To:\n\tMessage-ID:Date:Subject:To:From:Reply-To:Content-ID:Content-Description:\n\tResent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:\n\tList-Owner; bh=tc4GNUBzlPoPWTjZ/FvJ0vrqb58xuNJIF/zjnllnRFI=;\n\tb=Ode+7S/ALmPS+B\n\tzfSn6Hwpv/avrwTn0x7ccHGdF9VgzlH35xJLpeuxv0yc0mlRllwYItBiPGYyETQTlfzUkjPyumE4X\n\t+JBLAXYqNaNOVXiivVFV+FDc9hC18nqMtnRjKze9OIp51htttANDZAe43Q0TBoFflE7WOTwoYR0NI\n\toIIovcmzA4IYd+bFBrJdiOWe24R4vREOVBtCvzinURMogCD12KYCStFR+efgBaWrAQrZrbsWgh9al\n\toKnTUiNFJKPi0GXbFaq14Z3LEmb16kNvMzwRkBTtywdZQzfk8kseFcNkMEgmllEm7jAtM+r+84nyY\n\t8OH/JOx8VclDT8BTK8eA==;","v=1; a=rsa-sha256; c=relaxed/simple; d=ti.com;\n\ts=ti-com-17Q1; t=1505213069;\n\tbh=fbCHR3Ke4MLlWfJjPY5XWtqHcKkeqC0PbwvYGw5Jqx0=;\n\th=From:To:CC:Subject:Date:In-Reply-To:References;\n\tb=D4EGEbzZTYORFceZuYEe+JnMvbziFQwsYQmNZHB19Q3Q3JR4CFw8i4BiWW/F9R/1m\n\tf/AyBV1AD5NyXarmbGGBchTnbffDaamRGl8i1vzZpf70OZoNLtOTm1FC28qirUnsdk\n\tamfjSpEkkbwIX7O6BjqdU4TiM1GYb4J23e6nKcqA="],"From":"Peter Ujfalusi <peter.ujfalusi@ti.com>","To":"<vinod.koul@intel.com>, <dan.j.williams@intel.com>","Subject":"[PATCH 1/5] dmaengine: edma: Implement protection for invalid\n\tmax_burst","Date":"Tue, 12 Sep 2017 13:44:20 +0300","Message-ID":"<20170912104424.18495-2-peter.ujfalusi@ti.com>","X-Mailer":"git-send-email 2.14.1","In-Reply-To":"<20170912104424.18495-1-peter.ujfalusi@ti.com>","References":"<20170912104424.18495-1-peter.ujfalusi@ti.com>","MIME-Version":"1.0","X-EXCLAIMER-MD-CONFIG":"e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180","X-CRM114-Version":"20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 ","X-CRM114-CacheID":"sfid-20170912_034455_329493_8EF67208 ","X-CRM114-Status":"UNSURE (   7.71  )","X-CRM114-Notice":"Please train this message.","X-Spam-Score":"-2.0 (--)","X-Spam-Report":"SpamAssassin version 3.4.1 on bombadil.infradead.org summary:\n\tContent analysis details:   (-2.0 points)\n\tpts rule name              description\n\t---- ----------------------\n\t--------------------------------------------------\n\t-0.0 RCVD_IN_DNSWL_NONE RBL: Sender listed at http://www.dnswl.org/,\n\tno trust [198.47.27.80 listed in list.dnswl.org]\n\t-0.0 SPF_PASS               SPF: sender matches SPF record\n\t-0.0 RP_MATCHES_RCVD Envelope sender domain matches handover relay\n\tdomain\n\t-1.9 BAYES_00               BODY: Bayes spam probability is 0 to 1%\n\t[score: 0.0000]\n\t-0.1 DKIM_VALID Message has at least one valid DKIM or DK signature\n\t0.1 DKIM_SIGNED            Message has a DKIM or DK signature,\n\tnot necessarily valid\n\t-0.1 DKIM_VALID_AU Message has a valid DKIM or DK signature from\n\tauthor's domain","X-BeenThere":"linux-arm-kernel@lists.infradead.org","X-Mailman-Version":"2.1.21","Precedence":"list","List-Unsubscribe":"<http://lists.infradead.org/mailman/options/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=unsubscribe>","List-Archive":"<http://lists.infradead.org/pipermail/linux-arm-kernel/>","List-Post":"<mailto:linux-arm-kernel@lists.infradead.org>","List-Help":"<mailto:linux-arm-kernel-request@lists.infradead.org?subject=help>","List-Subscribe":"<http://lists.infradead.org/mailman/listinfo/linux-arm-kernel>,\n\t<mailto:linux-arm-kernel-request@lists.infradead.org?subject=subscribe>","Cc":"dmaengine@vger.kernel.org, t-kristo@ti.com, linux-omap@vger.kernel.org, \n\tlinux-kernel@vger.kernel.org, linux-arm-kernel@lists.infradead.org","Content-Type":"text/plain; charset=\"utf-8\"","Content-Transfer-Encoding":"base64","Sender":"\"linux-arm-kernel\" <linux-arm-kernel-bounces@lists.infradead.org>","Errors-To":"linux-arm-kernel-bounces+incoming-imx=patchwork.ozlabs.org@lists.infradead.org","List-Id":"linux-imx-kernel.lists.patchwork.ozlabs.org"},"content":"﻿Set the device's max_burst to 32767 (CIDX is 16bit signed value) so clients\ncan take this into consideration when setting up the trasnfer.\n\nDuring slave transfer preparation check if the requested maxburst is valid.\n\nSigned-off-by: Peter Ujfalusi <peter.ujfalusi@ti.com>\n---\n drivers/dma/edma.c | 5 +++++\n 1 file changed, 5 insertions(+)","diff":"diff --git a/drivers/dma/edma.c b/drivers/dma/edma.c\nindex 3879f80a4815..6970355abdc9 100644\n--- a/drivers/dma/edma.c\n+++ b/drivers/dma/edma.c\n@@ -891,6 +891,10 @@ static int edma_slave_config(struct dma_chan *chan,\n \t    cfg->dst_addr_width == DMA_SLAVE_BUSWIDTH_8_BYTES)\n \t\treturn -EINVAL;\n \n+\tif (cfg->src_maxburst > chan->device->max_burst ||\n+\t    cfg->dst_maxburst > chan->device->max_burst)\n+\t\treturn -EINVAL;\n+\n \tmemcpy(&echan->cfg, cfg, sizeof(echan->cfg));\n \n \treturn 0;\n@@ -1855,6 +1859,7 @@ static void edma_dma_init(struct edma_cc *ecc, bool legacy_mode)\n \ts_ddev->dst_addr_widths = EDMA_DMA_BUSWIDTHS;\n \ts_ddev->directions |= (BIT(DMA_DEV_TO_MEM) | BIT(DMA_MEM_TO_DEV));\n \ts_ddev->residue_granularity = DMA_RESIDUE_GRANULARITY_BURST;\n+\ts_ddev->max_burst = SZ_32K - 1; /* CIDX: 16bit signed */\n \n \ts_ddev->dev = ecc->dev;\n \tINIT_LIST_HEAD(&s_ddev->channels);\n","prefixes":["1/5"]}