From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Luis R. Rodriguez" Subject: Do Qualcomm drivers use DMA buffers for request_firmware_into_buf()? Date: Wed, 6 Jun 2018 22:32:57 +0200 Message-ID: <20180606203257.GH4511@wotan.suse.de> References: <20180408174014.21908-3-hdegoede@redhat.com> <20180423211143.GZ14440@wotan.suse.de> <71e6a45a-398d-b7a4-dab0-8b9936683226@redhat.com> <1524586021.3364.20.camel@linux.vnet.ibm.com> <20180424234219.GX14440@wotan.suse.de> <1524632409.3371.48.camel@linux.vnet.ibm.com> <20180425175557.GY14440@wotan.suse.de> <20180508153805.GC27853@wotan.suse.de> <20180601192346.GQ4511@wotan.suse.de> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Content-Disposition: inline In-Reply-To: <20180601192346.GQ4511@wotan.suse.de> List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: driverdev-devel-bounces@linuxdriverproject.org Sender: "devel" To: Andy Gross , David Brown , Bjorn Andersson , Hans de Goede , Michal Hocko , Andrew Morton , Rik van Riel , Laura Abbott , Vlastimil Babka Cc: dmitry.torokhov@gmail.com, Matt Fleming , Will Deacon , platform-driver-x86@vger.kernel.org, David Howells , Peter Jones , mcgrof@kernel.org, "H . Peter Anvin" , "open list:ANDROID DRIVERS" , nbroeking@me.com, Jonathan Corbet , x86@kernel.org, Arve =?iso-8859-1?B?SGr4bm5lduVn?= , Ingo Molnar , Darren Hart , Mimi Zohar , Arend Van Spriel , Todd Kjos , Kees Cook , linux-efi , linux-arm-msm@vger.kernel.org, Torsten Duwe , Josh Triplett , Chris Wright , Andy Lutomirski , Thomas List-Id: linux-arm-msm@vger.kernel.org On Fri, Jun 01, 2018 at 09:23:46PM +0200, Luis R. Rodriguez wrote: > On Tue, May 08, 2018 at 03:38:05PM +0000, Luis R. Rodriguez wrote: > > On Fri, May 04, 2018 at 12:44:37PM -0700, Martijn Coenen wrote: > > > > > > I think the Qualcomm folks owning this (Andy, David, Bjorn, already > > > cc'd here) are better suited to answer that question. > > > > Andy, David, Bjorn? > > Andy, David, Bjorn? A month now with no answer... Perhaps someone who has this hardware can find out empirically for us, as follows (mm folks is this right?): page = virt_to_page(address); if (!page) fail closed... if (page_zone(page) == ZONE_DMA || page_zone(page) == ZONE_DMA32) this is a DMA buffer else not DMA! Note that when request_firmware_into_buf() was being reviewed Mimi had asked back in 2016 [0] that if a DMA buffer was going to be used READING_FIRMWARE_DMA should be used otherwise READING_FIRMWARE_PREALLOC_BUFFER was fine. If it is a DMA buffer *now*, why / how did this change? [0] https://patchwork.kernel.org/patch/9074611/ Luis