Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp416854imm; Wed, 29 Aug 2018 03:21:05 -0700 (PDT) X-Google-Smtp-Source: ANB0VdZnRR4OxeozbqAWruYR1DAcnGUqcwqvUYSGba8uLEg/lPBNfkthZp6TC5kCamBbxqq7DOc6 X-Received: by 2002:a63:9412:: with SMTP id m18-v6mr5127382pge.440.1535538064928; Wed, 29 Aug 2018 03:21:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1535538064; cv=none; d=google.com; s=arc-20160816; b=jXNmdu5SBoYaCN2ADMr6KWgj42DeUrrfhddAyxc+mZYDz7uqf8s5t6i9HBUfdV6hKe UeE26uTLtP5XUONSGpu90ILFXqPXxbE03Ty3tCRHQHxRGXgqbWRBslkd++EeV8H9JsSq CttNFJYjqPjv9luJEdO1yIEP9n07HY1ZamEWeb2/splRpquu1UgMeAYmORK83ysaNsuB /C/xV8RlOkKy8HH+uhNhjDTd4m00f2Wad8VG96n9MQDBXLzLMBIa4+fNFrBDyNlld8J3 c81tUB1EoEreeg5GAdeKMuOfeZQbocUx25Pa1VmWYhcaGBH9RQMf67lbJqeoBzx28wCQ FPJg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :references:in-reply-to:mime-version:dkim-signature :arc-authentication-results; bh=Fb1c9G+2Z7Eb/LHsM72s2v2VMyfTPPK5sD2QVtu7bD0=; b=HYNxjWj3sTp89acJIixrGo6xfEul2tw7EGrSTdloYvM5EZpdLNIca1SPhgOvlHHh/m rKOxmtvvBNS4eATUZSwzi1ni1m0ywYAr/Y7qgSJmON1SXacD0GfEXDBUt4IBrhXoZvXR b75YFeq+vojUL1uY4TvL2oDR1dRtUid65xBipu2a49HtzLj2reNRExGTdm28RS1TTOZU Fl5InEkPIiVrkcqV79mrGBJyGRlFNUzoM1UDtQS1UX37cNBKtnFkn1NTzbT/3yCJkYGZ buDqdpeY7MOsiretTyIUVDV9n7FiTtP9xln5PhTn6ULHI5gORQnjsw2edwxdcX15/gaf qWNA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=XlRSNLkR; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id c187-v6si3552951pga.378.2018.08.29.03.20.49; Wed, 29 Aug 2018 03:21:04 -0700 (PDT) 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; dkim=pass header.i=@linaro.org header.s=google header.b=XlRSNLkR; 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; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1728196AbeH2OPz (ORCPT + 99 others); Wed, 29 Aug 2018 10:15:55 -0400 Received: from mail-io0-f194.google.com ([209.85.223.194]:35658 "EHLO mail-io0-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727172AbeH2OPy (ORCPT ); Wed, 29 Aug 2018 10:15:54 -0400 Received: by mail-io0-f194.google.com with SMTP id w11-v6so4022199iob.2 for ; Wed, 29 Aug 2018 03:19:42 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc; bh=Fb1c9G+2Z7Eb/LHsM72s2v2VMyfTPPK5sD2QVtu7bD0=; b=XlRSNLkRdedirUpxm9Ig613opdEjxA53i+QLztDD0zfwISWWrsya8wv0jLbcgdxXgf aIcoXdlibk47CFNqz2JJANtxlFTVVL+ud7bEjqmIy72UKYtvov9OeQUfJBvBPQ4yKkfh Zerq6XngGvgijuN4oI+g5XYbjOQWnsiVf9FAU= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:in-reply-to:references:from:date :message-id:subject:to:cc; bh=Fb1c9G+2Z7Eb/LHsM72s2v2VMyfTPPK5sD2QVtu7bD0=; b=gPcxGTNy0LOTdjcYmiOCARo7TWv4Zf1+c0xE/Wnhddn0mvTn/87YTkd5rt/3amBLS9 yKRcPbGuBbgAyiSDGHU7rpt0hTyUniB+WVZ50iOMtzmY4reMrEoVb2Jkpfn/T4V2iKbu YM10/zl3o5KDECWUHk358UW5NPz2sWr1fUteuVX2gaezKj1eHQjsoUHN1viLpsYv5Nev xJiwU4s9vCgYhqfUQEE51kEkJV78S+0KmHD2PHgFu8qMNno7WdY6t4UaefjDomh16eRz B/24z/hxY+xndIRnP6utFsiEKb7szhlUQEiPsZPYbzUFm8XzXUK8sTLe6/pxaPsRNSHl Os4A== X-Gm-Message-State: APzg51ASwA1H0XQzgpVokjMZlLYvPky47Ml+12DvqPfBX/ywWX1Mdfk4 ve6sfGF3nwxlnclySlNnyuo6FyEmM0v1DHhmLBwtEQ== X-Received: by 2002:a6b:1416:: with SMTP id 22-v6mr4490032iou.218.1535537981989; Wed, 29 Aug 2018 03:19:41 -0700 (PDT) MIME-Version: 1.0 Received: by 2002:a02:2b03:0:0:0:0:0 with HTTP; Wed, 29 Aug 2018 03:19:41 -0700 (PDT) In-Reply-To: <20180820234341.5271-1-jmkrzyszt@gmail.com> References: <20180813223448.21316-1-jmkrzyszt@gmail.com> <20180820234341.5271-1-jmkrzyszt@gmail.com> From: Ulf Hansson Date: Wed, 29 Aug 2018 12:19:41 +0200 Message-ID: Subject: Re: [RFC RFT PATCH 0/4] gpiolib: speed up GPIO array processing To: Janusz Krzysztofik Cc: Linus Walleij , Jonathan Corbet , Miguel Ojeda Sandonis , Peter Korsgaard , Peter Rosin , Andrew Lunn , Florian Fainelli , "David S. Miller" , Dominik Brodowski , Kishon Vijay Abraham I , Lars-Peter Clausen , Michael Hennerich , Jonathan Cameron , Hartmut Knaack , Peter Meerwald-Stadler , Greg Kroah-Hartman , Jiri Slaby , linux-gpio@vger.kernel.org, linux-doc@vger.kernel.org, linux-i2c@vger.kernel.org, "linux-mmc@vger.kernel.org" , netdev@vger.kernel.org, linux-iio@vger.kernel.org, driverdevel , linux-serial@vger.kernel.org, Linux Kernel Mailing List Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On 21 August 2018 at 01:43, Janusz Krzysztofik wrote: > > This series is a follow up of the former "mtd: rawnand: ams-delta: Use > gpio-omap accessors for data I/O" which already contained some changes > to gpiolib. Those previous attempts were commented by Borris Brezillon > who suggested using GPIO API modified to accept bitmaps, and by Linus > Walleij who suggested still more great ideas for further immprovement > of the proposed API changes - thanks! > > The goal is to boost performans of get/set array functions while > processing GPIO arrays which represent pins of a signle chip in > hardware order. If resulting performance is close to PIO, GPIO API > can be used for data I/O without much loss of speed. > > Created and tested on a low end Amstrad Delta board with NAND driver > updated to use GPIO API for data I/O. Performance degrade compared to > PIO is much better than before the optimization but still not quite > satisfactory. > > > Janusz Krzysztofik (4): > gpiolib: Pass bitmaps, not integer arrays, to get/set array > gpiolib: Identify arrays matching GPIO hardware > gpiolib: Pass array info to get/set array functions > gpiolib: Implement fast processing path in get/set array > > > Documentation/driver-api/gpio/board.rst | 15 + > Documentation/driver-api/gpio/consumer.rst | 48 +++- > drivers/auxdisplay/hd44780.c | 64 +++--- > drivers/bus/ts-nbus.c | 25 -- > drivers/gpio/gpio-max3191x.c | 23 +- > drivers/gpio/gpiolib.c | 279 ++++++++++++++++++++++------ > drivers/gpio/gpiolib.h | 15 + > drivers/i2c/muxes/i2c-mux-gpio.c | 5 > drivers/mmc/core/pwrseq_simple.c | 15 - > drivers/mux/gpio.c | 7 > drivers/net/phy/mdio-mux-gpio.c | 5 > drivers/pcmcia/soc_common.c | 14 - > drivers/phy/motorola/phy-mapphone-mdm6600.c | 21 +- > drivers/staging/iio/adc/ad7606.c | 12 - > drivers/tty/serial/serial_mctrl_gpio.c | 9 > include/linux/gpio/consumer.h | 35 ++- > 16 files changed, 410 insertions(+), 182 deletions(-) > For the mmc related changes: Acked-by: Ulf Hansson Kind regards Uffe