Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1031284AbbD1NtR (ORCPT ); Tue, 28 Apr 2015 09:49:17 -0400 Received: from pandora.arm.linux.org.uk ([78.32.30.218]:60139 "EHLO pandora.arm.linux.org.uk" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S965583AbbD1NtN (ORCPT ); Tue, 28 Apr 2015 09:49:13 -0400 Date: Tue, 28 Apr 2015 14:48:49 +0100 From: Russell King - ARM Linux To: Geert Uytterhoeven Cc: Tomi Valkeinen , Pavel Machek , Archit Taneja , Marek Vasut , kernel list , Dinh Nguyen , Jean-Christophe PLAGNIOL-VILLARD , Grant Likely , Rob Herring , Jingoo Han , Rob Clark , Linux Fbdev development list , "devicetree@vger.kernel.org" , Alexander Shiyan , H Hartley Sweeten Subject: Re: simple framebuffer slower by factor of 20, on socfpga (arm) platform Message-ID: <20150428134848.GC12732@n2100.arm.linux.org.uk> References: <20150407121247.GA29497@amd> <20150409110634.GA27407@amd> <552660C7.4020805@ti.com> <552663C2.70308@ti.com> <55277650.8070607@codeaurora.org> <20150424132923.GA11729@amd> <553A47D3.2070107@ti.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.23 (2014-03-12) Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1864 Lines: 42 On Fri, Apr 24, 2015 at 03:46:56PM +0200, Geert Uytterhoeven wrote: > On Fri, Apr 24, 2015 at 3:40 PM, Tomi Valkeinen wrote: > > On 24/04/15 16:29, Pavel Machek wrote: > >> On Fri 2015-04-10 12:35:52, Archit Taneja wrote: > >>>> That said, if the fb is in RAM, and is only written by the CPU, I think > >>>> a normal memcpy() for fb_memcpy_fromfb() should be fine... > >>> > >>> I didn't test for performance regressions when I posted this patch. > >>> > >>> A look at _memcpy_fromio in arch/arm/kernel/io.c shows that readb() is used > >>> all the time, even when the source and destination addresses are aligned for > >>> larger reads to be possible. Other archs seem to use readl() or readq() when > >>> they can. Maybe that makes memcpy_fromio slower than the implementation of > >>> memcpy on arm? > >> > >> Ok, can you prepare a patch for me to try? Or should we just revert > >> the original commit? > > > > The old way worked fine, afaik, so maybe we can revert. But still, isn't > > it more correct to use memcpy_fromio? It's (possibly) io memory we have > > here. > > Yes it is. > > So please optimize ARM's _memcpy_fromio(), _memcpy_toio(), and _memset_io(). > That will benefit other drivers on ARM, too. That's not going to happen. I've had a patch which does that, but people are concerned that it changes the behaviour of the functions by changing the access size, which could cause regressions. It seems people are far too worried about that to even consider trying. :( -- FTTC broadband for 0.8mile line: currently at 10.5Mbps down 400kbps up according to speedtest.net. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/