From patchwork Thu Jan 28 16:23:15 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Arnd Bergmann X-Patchwork-Id: 101052 Delivered-To: patch@linaro.org Received: by 10.112.130.2 with SMTP id oa2csp577719lbb; Thu, 28 Jan 2016 08:24:53 -0800 (PST) X-Received: by 10.66.158.169 with SMTP id wv9mr5783442pab.138.1453998293101; Thu, 28 Jan 2016 08:24:53 -0800 (PST) Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id 2si17778520pfm.127.2016.01.28.08.24.52; Thu, 28 Jan 2016 08:24:53 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1161235AbcA1QYu (ORCPT + 30 others); Thu, 28 Jan 2016 11:24:50 -0500 Received: from mout.kundenserver.de ([212.227.126.131]:54473 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S967059AbcA1QYp (ORCPT ); Thu, 28 Jan 2016 11:24:45 -0500 Received: from wuerfel.lan. ([78.42.132.4]) by mrelayeu.kundenserver.de (mreue002) with ESMTPA (Nemesis) id 0MDpnS-1aIqPf3aeM-00H6ku; Thu, 28 Jan 2016 17:24:10 +0100 From: Arnd Bergmann To: Felipe Balbi Cc: linux-arm-kernel@lists.infradead.org, Arnd Bergmann , Felipe Balbi , linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, Robert Jarzmik , Haojian Zhuang , Daniel Mack , Imre Kaloz , Krzysztof Halasa , Greg Kroah-Hartman Subject: [PATCH 7/7] usb: musb/ux500: remove duplicate check for dma_is_compatible Date: Thu, 28 Jan 2016 17:23:15 +0100 Message-Id: <1453998206-3490016-3-git-send-email-arnd@arndb.de> X-Mailer: git-send-email 2.7.0 In-Reply-To: <1453998206-3490016-1-git-send-email-arnd@arndb.de> References: <1453997722-3489596-1-git-send-email-arnd@arndb.de> <1453998206-3490016-1-git-send-email-arnd@arndb.de> X-Provags-ID: V03:K0:FWxJHL3G4PTyfGWUb+NITW+Qowqh/ZW60RMDCUcUa7jg4EsOZR+ lZSqLh+oFOHW+2A62zW7CPuXWNZvQ5ITuex2+NIuP5tkXNtn3/ZwFOsKjeveSw21vYzgLr0 mfVyYg4X9Yi+Ldc+Q6121BIgSzum6eWEZNjzlZB5box9CDmfYwr9cI9kQRzm9qA7s8EZ0Gk ZYHfkZGkeu+sE1mCuL3aA== X-UI-Out-Filterresults: notjunk:1; V01:K0:3CJlrZBtV8I=:snXUz7ZrL8tSGp68dMzlvi pv2lu868RavSVuo3j+LNgO/5lxajgYGJXCCt8ax9qKCUPyeERAktIJyE+164z3sa09kXnmNf9 T3djRqUNlkfbWJOAirBd7rTkYdbBkIfFHPIUmmNbsCPG8ZtZIMCJikNzMJci/hZS6yssADofX rwQ11Krgp2BYSR7C7L2iYF+hii9b1Z2SgVYbO7g5Dk3l6BgseE/F5S4g6RKiP3uVmpfslKibI 3USV1lRCbyBplbM3JQMRl5stas81I9rSzNoCr7xHrYNH+H3nOKF85ngBUFQE59VbDWMdBOhhj kZK7nz8BHEtwbCMsj0jWe6/ocKwoRRlCsdaX1kt9R3ULhbW0eEueAmI3We4YZY+dGvsd+VqWr 2B2vCSk5ApsflRmOd5jNgXLWaEf+PXav0qBXMoCeEhS8qiIph1mzktXn+Vv1CrXAIY3v0bUJY Y3qpNP02KjTMFD7Gumi7gqUxOWokSoyQainzsQUjTYvmtVQI1xVQb8FK7SgrTafmC55yRueyM SiJD3decrVmRlbUnWfYN8P9ZaFXjyboNOTLX55jV09VIkIYXjwR7Sxw8miUX8LAE/W+DDvQt6 VW5csGTCDLFi4vjJ0AbDOtxtwiPLzCF+C2effDZfj/yheTdIMhfNgMhA0dX3gCLw+++3I3846 NJOr4lWTvp6yrYN/7gLsfs0zInhCvkc0Qg8kezkT+iovRzjqabhooiedXX7gkGlZ/4Jo= Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org When dma_addr_t is 64-bit, we get a warning about an invalid cast in the call to ux500_dma_is_compatible() from ux500_dma_channel_program(): drivers/usb/musb/ux500_dma.c: In function 'ux500_dma_channel_program': drivers/usb/musb/ux500_dma.c:210:51: error: cast to pointer from integer of different size [-Werror=int-to-pointer-cast] if (!ux500_dma_is_compatible(channel, packet_sz, (void *)dma_addr, len)) The problem is that ux500_dma_is_compatible() is called from the main musb driver on the virtual address, but here we pass in a DMA address, so the types are fundamentally different but it works because the function only checks the alignment of the buffer and that is the same. We could work around this by adding another cast, but I have checked that the buffer we get passed here is already checked before it gets mapped, so the second check seems completely unnecessary and removing it must be the cleanest solution. Signed-off-by: Arnd Bergmann --- drivers/usb/musb/ux500_dma.c | 3 --- 1 file changed, 3 deletions(-) -- 2.7.0 diff --git a/drivers/usb/musb/ux500_dma.c b/drivers/usb/musb/ux500_dma.c index d0b6a1cd7f62..c92a295049ad 100644 --- a/drivers/usb/musb/ux500_dma.c +++ b/drivers/usb/musb/ux500_dma.c @@ -207,9 +207,6 @@ static int ux500_dma_channel_program(struct dma_channel *channel, BUG_ON(channel->status == MUSB_DMA_STATUS_UNKNOWN || channel->status == MUSB_DMA_STATUS_BUSY); - if (!ux500_dma_is_compatible(channel, packet_sz, (void *)dma_addr, len)) - return false; - channel->status = MUSB_DMA_STATUS_BUSY; channel->actual_len = 0; ret = ux500_configure_channel(channel, packet_sz, mode, dma_addr, len);