From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.8 required=3.0 tests=DKIM_INVALID,DKIM_SIGNED, HEADER_FROM_DIFFERENT_DOMAINS,INCLUDES_PATCH,MAILING_LIST_MULTI,SIGNED_OFF_BY, SPF_PASS,USER_AGENT_GIT autolearn=unavailable autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 4311FC282D7 for ; Mon, 11 Feb 2019 13:20:46 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id 1118F21A80 for ; Mon, 11 Feb 2019 13:20:45 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=fail reason="signature verification failed" (2048-bit key) header.d=infradead.org header.i=@infradead.org header.b="qXjFd8K0" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727924AbfBKNUb (ORCPT ); Mon, 11 Feb 2019 08:20:31 -0500 Received: from bombadil.infradead.org ([198.137.202.133]:57694 "EHLO bombadil.infradead.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727905AbfBKNUa (ORCPT ); Mon, 11 Feb 2019 08:20:30 -0500 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Transfer-Encoding: MIME-Version:References:In-Reply-To:Message-Id:Date:Subject:Cc:To:From:Sender :Reply-To:Content-Type:Content-ID:Content-Description:Resent-Date:Resent-From :Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=ADQN8F5PCXYj+x0CbbvQvw4EJN+59pQQ+mq6k+aKmHg=; b=qXjFd8K0r4US2pdVgQVdDxYF6b 77+3Eg1ttL7HMBvVyRM0mgKWBZxRzyPUSZHboHGg9C9cGTVGgkxdF+FHY7oI7xz5iTNa7eF6usbhr p+dHJnyWIhuSXsME1mt0aoMut5wVHIDoGCObKifRPJ/b99aWmsmSJQwYzlZUsFx1eaRzk0Y+CMHWc WgFAgVqQyRL63jcUw4eoGk7a7YmNkSM6bLOd7zPUEeRdJhxDbgZsqZKMkKBWiNn88xyhB0Ra9huXn 5ugK5eA/mDrna/8CRhyc8MNKZckglDjVXYnOE5ZllwNAHCBBCAt055hEPzWctI721nAOwqdtLqZjq 3yHkbSyQ==; Received: from 089144210182.atnat0019.highway.a1.net ([89.144.210.182] helo=localhost) by bombadil.infradead.org with esmtpsa (Exim 4.90_1 #2 (Red Hat Linux)) id 1gtBVd-0000Wp-CC; Mon, 11 Feb 2019 13:20:29 +0000 From: Christoph Hellwig To: "David S. Miller" , netdev@vger.kernel.org Cc: Nicolas Ferre , iommu@lists.linux-foundation.org, linux-kernel@vger.kernel.org Subject: [PATCH 8/8] smc911x: pass struct device to DMA API functions Date: Mon, 11 Feb 2019 14:20:04 +0100 Message-Id: <20190211132004.29143-9-hch@lst.de> X-Mailer: git-send-email 2.20.1 In-Reply-To: <20190211132004.29143-1-hch@lst.de> References: <20190211132004.29143-1-hch@lst.de> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SRS-Rewrite: SMTP reverse-path rewritten from by bombadil.infradead.org. See http://www.infradead.org/rpr.html Sender: netdev-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org The DMA API generally relies on a struct device to work properly, and only barely works without one for legacy reasons. Pass the easily available struct device from the platform_device to remedy this. Note that smc911x apparently is a PIO chip with an external DMA handshake, and we probably use the wrong device here. But at least it matches the mapping side, which apparently works or at least worked in the not too distant past. Signed-off-by: Christoph Hellwig --- drivers/net/ethernet/smsc/smc911x.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/net/ethernet/smsc/smc911x.c b/drivers/net/ethernet/smsc/smc911x.c index 8355dfbb8ec3..b550e624500d 100644 --- a/drivers/net/ethernet/smsc/smc911x.c +++ b/drivers/net/ethernet/smsc/smc911x.c @@ -1188,7 +1188,7 @@ smc911x_tx_dma_irq(void *data) DBG(SMC_DEBUG_TX | SMC_DEBUG_DMA, dev, "TX DMA irq handler\n"); BUG_ON(skb == NULL); - dma_unmap_single(NULL, tx_dmabuf, tx_dmalen, DMA_TO_DEVICE); + dma_unmap_single(lp->dev, tx_dmabuf, tx_dmalen, DMA_TO_DEVICE); netif_trans_update(dev); dev_kfree_skb_irq(skb); lp->current_tx_skb = NULL; @@ -1219,7 +1219,7 @@ smc911x_rx_dma_irq(void *data) DBG(SMC_DEBUG_FUNC, dev, "--> %s\n", __func__); DBG(SMC_DEBUG_RX | SMC_DEBUG_DMA, dev, "RX DMA irq handler\n"); - dma_unmap_single(NULL, rx_dmabuf, rx_dmalen, DMA_FROM_DEVICE); + dma_unmap_single(lp->dev, rx_dmabuf, rx_dmalen, DMA_FROM_DEVICE); BUG_ON(skb == NULL); lp->current_rx_skb = NULL; PRINT_PKT(skb->data, skb->len); -- 2.20.1