From nobody Sun Dec 14 13:56:10 2025 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id BD4581922F5; Mon, 10 Feb 2025 05:39:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.12 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739165976; cv=none; b=phfsT6YX4M0UiPALS/+kpQBaM1LaH0OINIHfbuHaBuxjLtZrGOlEj8Af2k2SBjowtFrWbscIcER+5N8TDqB4/KNSHoLapg3ksGrJOJ+Z1wlbIYw/PPvEhXWSnGf43jKX0QMuYCcGDDMyZSY9dPecmPne72VPkZ8kCk1GDKZPru4= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739165976; c=relaxed/simple; bh=E5Gx0mln1QzktxWO4z36jzZMXzJEeo8ZrweNjo//Bz8=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=SjyLKND+GRFD8zXheB7+AhJ6wosp5COZ0WuZAaFZt304KCXS7kt/jM409gpHiZCic8I3Q3wa1f7jfEaVEvGAATO6rVPwolpeNdyfwxx8VgrO/5RrwIUIPun0HiS52t0XvJCiXkdMnCj9W1X+myfpC+QOZ+sqdfEeP1s5DKiaCZs= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=h6SHTetY; arc=none smtp.client-ip=192.198.163.12 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="h6SHTetY" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739165975; x=1770701975; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=E5Gx0mln1QzktxWO4z36jzZMXzJEeo8ZrweNjo//Bz8=; b=h6SHTetYWCyZ5Dm6zV+gq5vA/H0IZa7Bb9RBdEVgvkq/+GSDjLwmJPJo Lh8kVb+IxbUfBKoIscOqH274NgnSEpLf0z29eGJWPs4QLcpcdWYJ37h6K vliKTonbhZcQECs6Sfoqb6xAv2oWWFUdvfRqTKcvQ+/xOFwZSId6Q077P tVKc4HGC69LzJ/geXMV0cfb2G5f9fib4gNiQTDQuF9tNbVQ9RqTIy2NAh HE1nzVCu6JDNjLb32CQb0RzJQhCEpZVjZF3JyzWuzE5Iu0iwS6fPf4wkz TBUzS/EejLfgZOT1NldpI8Lya14GWeKItgoLODD5dJeUsvgqCiZvDtlnD A==; X-CSE-ConnectionGUID: rWOW+yg0TtSFMTUgfdFmnA== X-CSE-MsgGUID: rG22I1baSEeJCcHyCZB1bQ== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43657923" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43657923" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by fmvoesa106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 21:39:34 -0800 X-CSE-ConnectionGUID: /OnQ3929R/ex36lOmtQeeQ== X-CSE-MsgGUID: PpKNo84rQ6WI/FRAXYPNLA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="112318414" Received: from pg15swiplab1181.png.altera.com ([10.244.232.167]) by fmviesa008.fm.intel.com with ESMTP; 09 Feb 2025 21:39:31 -0800 From: niravkumar.l.rabara@intel.com To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Niravkumar L Rabara , linux@treblig.org, Shen Lichuan , Jinjie Ruan , u.kleine-koenig@baylibre.com, nirav.rabara@altera.com, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org Cc: stable@vger.kernel.org Subject: [PATCH v3 1/3] mtd: rawnand: cadence: fix error code in cadence_nand_init() Date: Mon, 10 Feb 2025 13:35:49 +0800 Message-Id: <20250210053551.2399716-2-niravkumar.l.rabara@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250210053551.2399716-1-niravkumar.l.rabara@intel.com> References: <20250210053551.2399716-1-niravkumar.l.rabara@intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Niravkumar L Rabara Replace dma_request_channel() with dma_request_chan_by_mask() and use helper functions to return proper error code instead of fixed -EBUSY. Fixes: ec4ba01e894d ("mtd: rawnand: Add new Cadence NAND driver to MTD subs= ystem") Cc: stable@vger.kernel.org Signed-off-by: Niravkumar L Rabara --- drivers/mtd/nand/raw/cadence-nand-controller.c | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/drivers/mtd/nand/raw/cadence-nand-controller.c b/drivers/mtd/n= and/raw/cadence-nand-controller.c index 8d1d710e439d..fb5f671bdb7b 100644 --- a/drivers/mtd/nand/raw/cadence-nand-controller.c +++ b/drivers/mtd/nand/raw/cadence-nand-controller.c @@ -2904,11 +2904,10 @@ static int cadence_nand_init(struct cdns_nand_ctrl = *cdns_ctrl) dma_cap_set(DMA_MEMCPY, mask); =20 if (cdns_ctrl->caps1->has_dma) { - cdns_ctrl->dmac =3D dma_request_channel(mask, NULL, NULL); - if (!cdns_ctrl->dmac) { - dev_err(cdns_ctrl->dev, - "Unable to get a DMA channel\n"); - ret =3D -EBUSY; + cdns_ctrl->dmac =3D dma_request_chan_by_mask(&mask); + if (IS_ERR(cdns_ctrl->dmac)) { + ret =3D dev_err_probe(cdns_ctrl->dev, PTR_ERR(cdns_ctrl->dmac), + "%d: Failed to get a DMA channel\n", ret); goto disable_irq; } } --=20 2.25.1 From nobody Sun Dec 14 13:56:10 2025 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id B323818FDAB; Mon, 10 Feb 2025 05:39:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.12 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739165981; cv=none; b=mWgwUkeOjX0zbZTy3pogXt70lXuxGxyLW0VnjYZaSuwqaFv06Qxv7Un0p8z+QBgnNlINNbJr1R3Y301ZQ8rdHX2CkoAC8/QAI/laVN+20JXTrJJOqaDKt9HsHoulIfttCOtLr+RKZz/2xMRlSrxyugKqsjQDnCWITeiIiToAKOE= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739165981; c=relaxed/simple; bh=lc1WfOtHLL38dYTO0tNdpL4x3ecYIFTJQotuO3oN89A=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=TD5lm3vLs9Wc3rydWYalZt/1tb0Fwv/KjDPRP7UgjSLSdP+IEKOeMePplLXg5cWhR9mK+/rqFAMBMH1/w+0EXbJSJeXClsJSCXHP7HHVB6/OK5FwzwN46T7RjR+uLfz91YzVEXvIlw0ZMWo5Gig85tY15Dbf8ZEMwrE0pqw3OuI= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=JGMdA1De; arc=none smtp.client-ip=192.198.163.12 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="JGMdA1De" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739165980; x=1770701980; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=lc1WfOtHLL38dYTO0tNdpL4x3ecYIFTJQotuO3oN89A=; b=JGMdA1Dejx84+pmUKA+QusARKQ7/kT514RAYSJ+WXusNws9QPzLnK4zK qulR2+ByiBqbjxV6BjZHR6SiUzEgS5QF7/nCY8EGkO+1Bt+AvIDOpr+Tv BTNas/tpU9G1+2rQcSe4/8wne8FNhMbznvIcRcSBEcwC4Zfkz156hcil4 rqlk4Hn0e560sxb3K8I2Cp/bEcyJQkG/B7Ysfugdo2lQi4aY7vo2/y6hQ MYPVf4cm1CveEl3lHmRO89klJJ5aLm5YxB2x9tzYjCEkoHS5zHCnIj9jL 1FDaUzg+mKRM8eH7N0F8i2+3iKXjXLVRWJm+IreF470tXPzWS2MQyal6A A==; X-CSE-ConnectionGUID: MFB1LqUYRjSTW376oas4xg== X-CSE-MsgGUID: IeNk2ETrRROKF2KYYjEgZA== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43657934" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43657934" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by fmvoesa106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 21:39:39 -0800 X-CSE-ConnectionGUID: epoIkivSQkid3sN3L33k3A== X-CSE-MsgGUID: vjvsKXlBRGCR1toba1vrAg== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="112318420" Received: from pg15swiplab1181.png.altera.com ([10.244.232.167]) by fmviesa008.fm.intel.com with ESMTP; 09 Feb 2025 21:39:36 -0800 From: niravkumar.l.rabara@intel.com To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Niravkumar L Rabara , linux@treblig.org, Shen Lichuan , Jinjie Ruan , u.kleine-koenig@baylibre.com, nirav.rabara@altera.com, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org Cc: stable@vger.kernel.org Subject: [PATCH v3 2/3] mtd: rawnand: cadence: use dma_map_resource for sdma address Date: Mon, 10 Feb 2025 13:35:50 +0800 Message-Id: <20250210053551.2399716-3-niravkumar.l.rabara@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250210053551.2399716-1-niravkumar.l.rabara@intel.com> References: <20250210053551.2399716-1-niravkumar.l.rabara@intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Niravkumar L Rabara Remap the slave DMA I/O resources to enhance driver portability. Using a physical address causes DMA translation failure when the ARM SMMU is enabled. Fixes: ec4ba01e894d ("mtd: rawnand: Add new Cadence NAND driver to MTD subs= ystem") Cc: stable@vger.kernel.org Signed-off-by: Niravkumar L Rabara --- .../mtd/nand/raw/cadence-nand-controller.c | 29 ++++++++++++++++--- 1 file changed, 25 insertions(+), 4 deletions(-) diff --git a/drivers/mtd/nand/raw/cadence-nand-controller.c b/drivers/mtd/n= and/raw/cadence-nand-controller.c index fb5f671bdb7b..47950a0ac6d2 100644 --- a/drivers/mtd/nand/raw/cadence-nand-controller.c +++ b/drivers/mtd/nand/raw/cadence-nand-controller.c @@ -471,6 +471,8 @@ struct cdns_nand_ctrl { struct { void __iomem *virt; dma_addr_t dma; + dma_addr_t iova_dma; + u32 size; } io; =20 int irq; @@ -1835,11 +1837,11 @@ static int cadence_nand_slave_dma_transfer(struct c= dns_nand_ctrl *cdns_ctrl, } =20 if (dir =3D=3D DMA_FROM_DEVICE) { - src_dma =3D cdns_ctrl->io.dma; + src_dma =3D cdns_ctrl->io.iova_dma; dst_dma =3D buf_dma; } else { src_dma =3D buf_dma; - dst_dma =3D cdns_ctrl->io.dma; + dst_dma =3D cdns_ctrl->io.iova_dma; } =20 tx =3D dmaengine_prep_dma_memcpy(cdns_ctrl->dmac, dst_dma, src_dma, len, @@ -2869,6 +2871,7 @@ cadence_nand_irq_cleanup(int irqnum, struct cdns_nand= _ctrl *cdns_ctrl) static int cadence_nand_init(struct cdns_nand_ctrl *cdns_ctrl) { dma_cap_mask_t mask; + struct dma_device *dma_dev =3D cdns_ctrl->dmac->device; int ret; =20 cdns_ctrl->cdma_desc =3D dma_alloc_coherent(cdns_ctrl->dev, @@ -2912,6 +2915,16 @@ static int cadence_nand_init(struct cdns_nand_ctrl *= cdns_ctrl) } } =20 + cdns_ctrl->io.iova_dma =3D dma_map_resource(dma_dev->dev, cdns_ctrl->io.d= ma, + cdns_ctrl->io.size, + DMA_BIDIRECTIONAL, 0); + + ret =3D dma_mapping_error(dma_dev->dev, cdns_ctrl->io.iova_dma); + if (ret) { + dev_err(cdns_ctrl->dev, "Failed to map I/O resource to DMA\n"); + goto dma_release_chnl; + } + nand_controller_init(&cdns_ctrl->controller); INIT_LIST_HEAD(&cdns_ctrl->chips); =20 @@ -2922,18 +2935,22 @@ static int cadence_nand_init(struct cdns_nand_ctrl = *cdns_ctrl) if (ret) { dev_err(cdns_ctrl->dev, "Failed to register MTD: %d\n", ret); - goto dma_release_chnl; + goto unmap_dma_resource; } =20 kfree(cdns_ctrl->buf); cdns_ctrl->buf =3D kzalloc(cdns_ctrl->buf_size, GFP_KERNEL); if (!cdns_ctrl->buf) { ret =3D -ENOMEM; - goto dma_release_chnl; + goto unmap_dma_resource; } =20 return 0; =20 +unmap_dma_resource: + dma_unmap_resource(dma_dev->dev, cdns_ctrl->io.iova_dma, + cdns_ctrl->io.size, DMA_BIDIRECTIONAL, 0); + dma_release_chnl: if (cdns_ctrl->dmac) dma_release_channel(cdns_ctrl->dmac); @@ -2955,6 +2972,8 @@ static int cadence_nand_init(struct cdns_nand_ctrl *c= dns_ctrl) static void cadence_nand_remove(struct cdns_nand_ctrl *cdns_ctrl) { cadence_nand_chips_cleanup(cdns_ctrl); + dma_unmap_resource(cdns_ctrl->dmac->device->dev, cdns_ctrl->io.iova_dma, + cdns_ctrl->io.size, DMA_BIDIRECTIONAL, 0); cadence_nand_irq_cleanup(cdns_ctrl->irq, cdns_ctrl); kfree(cdns_ctrl->buf); dma_free_coherent(cdns_ctrl->dev, sizeof(struct cadence_nand_cdma_desc), @@ -3019,7 +3038,9 @@ static int cadence_nand_dt_probe(struct platform_devi= ce *ofdev) cdns_ctrl->io.virt =3D devm_platform_get_and_ioremap_resource(ofdev, 1, &= res); if (IS_ERR(cdns_ctrl->io.virt)) return PTR_ERR(cdns_ctrl->io.virt); + cdns_ctrl->io.dma =3D res->start; + cdns_ctrl->io.size =3D resource_size(res); =20 dt->clk =3D devm_clk_get(cdns_ctrl->dev, "nf_clk"); if (IS_ERR(dt->clk)) --=20 2.25.1 From nobody Sun Dec 14 13:56:10 2025 Received: from mgamail.intel.com (mgamail.intel.com [192.198.163.12]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 90D4B191F94; Mon, 10 Feb 2025 05:39:45 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=192.198.163.12 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739165987; cv=none; b=KiL65YVvJycn1H1Ww47M6Yd/SzLLhbSsRlKnUXekUyRSVBye7FYO8qpj4nSUPjBw06/wniTcUaQCreQU7PNHpyJJZNRARyY/uFM/yJp9WFOxIr3nlPkDD54URw9JiuUo6ko+r7Y+RTknygbuK1BKw9DLxtJfBI9yzWLrbR+sXos= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1739165987; c=relaxed/simple; bh=buG6voVc5zfk4HiKSZp19+HKiFIsBIA6Ww+wD6EEDD0=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=JWXeR+d/dcyu33GPwOQpeFd9ek2RQ+wvTBq0K4yirlWQ+rqn3TRPMMJtaOpDDNiec8kOJ7Jckg5C86O+tKznie+g/UhU1CjnqKIIYEYxzd4/zSxcXB2NNKaojfBq3zt47veKl69HdglsXGAr81PsF11+AXEBwGwrRCziL1SlKV4= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=Q0r3cLW+; arc=none smtp.client-ip=192.198.163.12 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="Q0r3cLW+" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1739165985; x=1770701985; h=from:to:cc:subject:date:message-id:in-reply-to: references:mime-version:content-transfer-encoding; bh=buG6voVc5zfk4HiKSZp19+HKiFIsBIA6Ww+wD6EEDD0=; b=Q0r3cLW+0VpqEdkEZmfacVDpZMYOryGQDrcVznLaIWWcsyQFPRH4tmZV SHzBc0Fkgd3HQcf6tttSCTrzU+KZZZ2NE+/NBwrDJraprEHcP3mQ1D8ct zRDI+0CFXLx+8Xj7lv+28LhLhzpP18hHMq4dVhSR5O1jMnR+4yBhdCh0U DEcFzSesAXNlHmbEerPdWdbHQJOvSkVhie7qWyAJB4YRro7GN6jQc6ka6 zZShhj06GVcJULmL3w9ZVn6t4sCRap4aWtivQYYVZYFuaXevtp9w1XPXW Rs0mLZd2rFFO3ghYP01cIR3chzEBjse7fAbgl/OKBtHxgMj1IuW4Axx/s Q==; X-CSE-ConnectionGUID: wzTWrSs6QzWcTjzLnI7oNg== X-CSE-MsgGUID: FkEm4cjnTK2Z26U3viJOUg== X-IronPort-AV: E=McAfee;i="6700,10204,11340"; a="43657951" X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="43657951" Received: from fmviesa008.fm.intel.com ([10.60.135.148]) by fmvoesa106.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 09 Feb 2025 21:39:45 -0800 X-CSE-ConnectionGUID: ApGwRRFvRWS+8W6N15XrDA== X-CSE-MsgGUID: gbY2Fzp2SgSxQBdk4A1XfA== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,273,1732608000"; d="scan'208";a="112318428" Received: from pg15swiplab1181.png.altera.com ([10.244.232.167]) by fmviesa008.fm.intel.com with ESMTP; 09 Feb 2025 21:39:42 -0800 From: niravkumar.l.rabara@intel.com To: Miquel Raynal , Richard Weinberger , Vignesh Raghavendra , Niravkumar L Rabara , linux@treblig.org, Shen Lichuan , Jinjie Ruan , u.kleine-koenig@baylibre.com, nirav.rabara@altera.com, linux-mtd@lists.infradead.org, linux-kernel@vger.kernel.org Cc: stable@vger.kernel.org Subject: [PATCH v3 3/3] mtd: rawnand: cadence: fix incorrect device in dma_unmap_single Date: Mon, 10 Feb 2025 13:35:51 +0800 Message-Id: <20250210053551.2399716-4-niravkumar.l.rabara@intel.com> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20250210053551.2399716-1-niravkumar.l.rabara@intel.com> References: <20250210053551.2399716-1-niravkumar.l.rabara@intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Niravkumar L Rabara dma_map_single is using physical/bus device (DMA) but dma_unmap_single is using framework device(NAND controller), which is incorrect. Fixed dma_unmap_single to use correct physical/bus device. Fixes: ec4ba01e894d ("mtd: rawnand: Add new Cadence NAND driver to MTD subs= ystem") Cc: stable@vger.kernel.org Signed-off-by: Niravkumar L Rabara --- drivers/mtd/nand/raw/cadence-nand-controller.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/mtd/nand/raw/cadence-nand-controller.c b/drivers/mtd/n= and/raw/cadence-nand-controller.c index 47950a0ac6d2..0b2db4173e72 100644 --- a/drivers/mtd/nand/raw/cadence-nand-controller.c +++ b/drivers/mtd/nand/raw/cadence-nand-controller.c @@ -1863,12 +1863,12 @@ static int cadence_nand_slave_dma_transfer(struct c= dns_nand_ctrl *cdns_ctrl, dma_async_issue_pending(cdns_ctrl->dmac); wait_for_completion(&finished); =20 - dma_unmap_single(cdns_ctrl->dev, buf_dma, len, dir); + dma_unmap_single(dma_dev->dev, buf_dma, len, dir); =20 return 0; =20 err_unmap: - dma_unmap_single(cdns_ctrl->dev, buf_dma, len, dir); + dma_unmap_single(dma_dev->dev, buf_dma, len, dir); =20 err: dev_dbg(cdns_ctrl->dev, "Fall back to CPU I/O\n"); --=20 2.25.1