Re: simple framebuffer slower by factor of 20, on socfpga (arm) platform
flat view
From: Pavel Machek <hidden>
Date: 2015-05-12 08:52:59
Also in:
linux-devicetree, lkml
On Wed 2015-05-06 11:45:04, Russell King - ARM Linux wrote:
On Tue, Apr 28, 2015 at 11:28:53AM -0400, Nicolas Pitre wrote:quoted
On Tue, 28 Apr 2015, Russell King - ARM Linux wrote:quoted
On Fri, Apr 24, 2015 at 03:46:56PM +0200, Geert Uytterhoeven wrote:quoted
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. :(What about making the optimized implementation available via kconfig?I'd prefer not to. My personal feeling is to put the patch in and just be done with it - these functions are supposed to be used on IO areas which don't care about access size (in other words, are memory-like rather than being register-like.) Here's the rather old patch: From: Russell King <redacted> Subject: [PATCH] ARM: optimize memset_io()/memcpy_fromio()/memcpy_toio() If we are building for a LE platform, and we haven't overriden the MMIO ops, then we can optimize the mem*io operations using the standard string functions. Signed-off-by: Russell King <redacted>
Tested-by: Pavel Machek <redacted> Acked-by: Pavel Machek <redacted> Works for me, framebuffer performance is back in "too fast to measure" range. When this is merged, should 981409b25e2a99409b26daa67293ca1cfd5ea0a0 be reverted in -stable? Thanks, Pavel -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html