Received: by 10.213.65.68 with SMTP id h4csp36722imn; Thu, 15 Mar 2018 08:50:58 -0700 (PDT) X-Google-Smtp-Source: AG47ELuczDQZAmchdORKE7lCZem8vH5Ya/lqR35xSCW6zFjLwMNBg7cltskNSbgaWqEAO+Tx9ubj X-Received: by 2002:a17:902:28e3:: with SMTP id f90-v6mr8836165plb.355.1521129058005; Thu, 15 Mar 2018 08:50:58 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1521129057; cv=none; d=google.com; s=arc-20160816; b=mKJHuj0NSE7taM0+epV4jkhsqajHeVMbzGZBftwgiqfumldQ6ZbDdou655LwlJaFWe iB+WXND8b5FkPFPezUm0pqhiWzZqrBa+/dnae+gg6kj7euZQD9L0djnNfrOXx1R3GE7V QVrnPL9n4EkTUAGQOGw6VujizWwoplwyn7CTYohf6jlG+S2mxwmZYF3mn/ou4b8Eolff 1xcWTwr6cU7ALcnbF3fhY1V5eh/5PFWbmWufhqGggu1vyPqVg840Cmkac/uqbUva8hI6 QJf5c/PPSwZ4Q2KDC9O8rZaEUpj0bp9lQYVJ+DwxoD8oqPugm4xWJtM65yLq71stZM8T e7/g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:message-id:date:subject:cc:to:from :dkim-signature:arc-authentication-results; bh=ERyPqhc0hUyfs+9RCdTdxfs+WDlGBSezWtpqPa9k7Fw=; b=KIKllaiM2Lsze+61aNfrlSc5YViMY8A8hCth0QDUl7RE7Cqhq1nbKpzib0Eco10Kto SdIFijApmpPMy9NVyVKBl3ajYEppo7T7YkktCNhe1NNTPbRdX6+BLAQgF3v6LeKLu0/j E+IaY8iKB6tUf2L3qfBusqHD649+LYwGBN6hVCUvNElh6fkV6dA+4dhSneUhvXgY64+h wrmxBIDE4yoHmylTFv1Cw5WQXX6LKH7EPnwZCCHNG7KzANIwuVAvj7BZ8bs9h43DGgQ5 0CuAXmoz1R0SY/vm6US9IRDRcRpls4TejY1Uc+E/NfkzCJuAv/I/vkfEKKdjCN68gUkj XzbQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=f6fiILZ4; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id e5si4042807pfl.5.2018.03.15.08.50.43; Thu, 15 Mar 2018 08:50:57 -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=@gmail.com header.s=20161025 header.b=f6fiILZ4; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932824AbeCOPsY (ORCPT + 99 others); Thu, 15 Mar 2018 11:48:24 -0400 Received: from mail-yw0-f193.google.com ([209.85.161.193]:44255 "EHLO mail-yw0-f193.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932397AbeCOPqe (ORCPT ); Thu, 15 Mar 2018 11:46:34 -0400 Received: by mail-yw0-f193.google.com with SMTP id x197so4883532ywg.11; Thu, 15 Mar 2018 08:46:33 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id; bh=ERyPqhc0hUyfs+9RCdTdxfs+WDlGBSezWtpqPa9k7Fw=; b=f6fiILZ4nBT6x8iA/wCQ1IUVnq3/YKRpVq75ZY2Qbh/1DnqVsagn1tc0MbC1XBRT40 7A0hFM4/z9VhtLoegaCKOTzODbJV3w8x/B2pbDCnOJgZVHrab6Jx6/wBaqmTCNKYvn5B uyu7/GXNVRRHkOXkB8pkETpJJs0/OFWGbDe+cioUMK8DrbsRU/HTpo72xz3X/Groo/az 2PDmcLO3M5aE+w3NERxLKz/sv19LPhlzcOvxNWRfQvd/C+/pwAhqEmWDrlZMmSUqDOnB aCECjVLYhKXrNYzcPz8kw1sn9pV9cW/qlEaToUssNtj05VWTihwyf7slLIOIr6yoePcC ZI1w== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id; bh=ERyPqhc0hUyfs+9RCdTdxfs+WDlGBSezWtpqPa9k7Fw=; b=mIx88jLSJ9V45owB5fcU5MCyR1PTmfgnCJmw+LtmTjrRGpz27e9RvW+69G87/Wop+m nh9ARgfyYicwS79GzDPa8ksgeFj6FAeUcOtGCteHaLhlyQDI9/QZLNOv8CykUi4t4+ts u9jJTsultRuOFlLXCTX0JQQXk1KKud2tm2CGnTcCwI36/uQ06paBZPnZ+u2uZHU4ApVd V9QWvtN0RTHfnsxYlrlr+CSWDzX28pwkQGJrMhrwnPQwv41kbnXYdbvIrW0jxmEvHLcF Cx9WAQtyCfWLBM54QYCGS8AhDx6F517ZrG51bp2+I5D5IfImS/aeXe6mvmFAbdQ127fT VNxQ== X-Gm-Message-State: AElRT7GiQhaqlnjLBneG7KUCivixydD5PWpjaoNaK0uqOVV3vEh4Z/wN xgqAAoJEzuEU+m/PF3FbfVqDRQ== X-Received: by 2002:a25:2903:: with SMTP id p3-v6mr6040618ybp.309.1521128793278; Thu, 15 Mar 2018 08:46:33 -0700 (PDT) Received: from localhost ([72.188.97.40]) by smtp.gmail.com with ESMTPSA id m72sm2008449ywd.82.2018.03.15.08.46.32 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Thu, 15 Mar 2018 08:46:32 -0700 (PDT) From: William Breathitt Gray To: linus.walleij@linaro.org Cc: andy.shevchenko@gmail.com, linux-gpio@vger.kernel.org, linux-kernel@vger.kernel.org, linux-iio@vger.kernel.org, William Breathitt Gray Subject: [PATCH v2 0/8] Implement get_multiple for ACCES and PC/104 drivers Date: Thu, 15 Mar 2018 11:46:19 -0400 Message-Id: X-Mailer: git-send-email 2.16.2 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Changes in v2: - Utilize bitmap_zero macro to clear bits array - Refactor bitwise operations and loop structure for clarity - Implement set_multiple callback for PCIe-IDIO-16 driver This patchset implements get_multiple callbacks for the PC104 GPIO drivers as well as the PCI-IDIO-16 and PCIe-IDIO-24 GPIO drivers. These devices all acquire the multiple input lines with a single read, so utilizing the get_multiple callback can provide improvement for those users who regularly access multiple input lines. While developing this patchset I noticed many of these devices make use of Intel 8255 compatible interfaces for their I/O. I may write a generic 8255 GPIO driver in the future to reduce some of the redundant code I see pop among the drivers for these devices. William Breathitt Gray (8): iio: stx104: Implement get_multiple callback gpio: 104-idio-16: Implement get_multiple callback gpio: pci-idio-16: Implement get_multiple callback gpio: pcie-idio-24: Implement get_multiple/set_multiple callbacks gpio: 104-dio-48e: Implement get_multiple callback gpio: 104-idi-48: Implement get_multiple callback gpio: gpio-mm: Implement get_multiple callback gpio: ws16c48: Implement get_multiple callback drivers/gpio/gpio-104-dio-48e.c | 46 +++++++++++++++ drivers/gpio/gpio-104-idi-48.c | 46 +++++++++++++++ drivers/gpio/gpio-104-idio-16.c | 15 +++++ drivers/gpio/gpio-gpio-mm.c | 46 +++++++++++++++ drivers/gpio/gpio-pci-idio-16.c | 50 +++++++++++++++++ drivers/gpio/gpio-pcie-idio-24.c | 118 +++++++++++++++++++++++++++++++++++++++ drivers/gpio/gpio-ws16c48.c | 46 +++++++++++++++ drivers/iio/adc/stx104.c | 11 ++++ 8 files changed, 378 insertions(+) -- 2.16.2