From patchwork Fri Jun 14 17:54:21 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Suzuki K Poulose X-Patchwork-Id: 166897 Delivered-To: patch@linaro.org Received: by 2002:a92:4782:0:0:0:0:0 with SMTP id e2csp2353053ilk; Fri, 14 Jun 2019 10:55:33 -0700 (PDT) X-Google-Smtp-Source: APXvYqyKW9rQo37XLnyJ0Dm28VLW7VWQ2b5w+IlaMMRBPE0pgXksm0kJoggsantc/UtnPiBpNK8K X-Received: by 2002:a63:3148:: with SMTP id x69mr22046008pgx.226.1560534933708; Fri, 14 Jun 2019 10:55:33 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1560534933; cv=none; d=google.com; s=arc-20160816; b=qfkiGjRl+G88qXfxOHMYzT7srtwfoM4lYXUVGVuMUVFkW5mGnJsIQqi9vdZqD8+NC9 jv64O1nudJ4XoNc1if+drwPUFlsHdG5RD9kkjX9qtbo+frTFc1fhWKQdkyHl4PxEXvOe 52GmRyFp7N2z4qaLdSu5hHhP14kIKvKytAVwW/ORZQS61K2xTAso0xtd1kFKa4MIebwr ZhvszhVGGr4wlfXkOwEZ1tilHclKSlxByhgU+9/TF4uATAfNXGZym/eduCOktHMSmp3w AuHACBBqJ18ZTSeXjRSyQcXAAV6eIcMW/GTrnwBdTEw9Zylkx2fmnHLNcT9fGWaMfjGX +jMw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:references:in-reply-to:message-id:date :subject:cc:to:from; bh=OIRFityxyPuE3q+Zg6zeunHcVDeFB+t5cGCSH7owJx0=; b=NJRR/p93SaO79B5DlNZRcv13GdbMFJUE7K2FQxrQahAfVHaSBTyv7LMteztv+8f9tX dgmGhErH5Y/wQdhDGIqSgltBL5MbobcwvqxY2yJQQ7RASDbjGDh52JTENGBitmwwXnw5 8DnnFLWkb2bGBzSsZnCYC3BsB5kUJZYFOLkl45iAN/DeAfPzIEvL2A71ee9fk0CJamQ5 gnQrymmxXbFz5p9BRBK5yUmP+KlvDIJ3mcqRaVBN9UuFgK4+wUmNYxWj9uYg+ZYyltHv FtrCyJf2+OtEOQb3wp0ot5SrvaDoaD8cLpBLWG1emDWqmj4k1/KO8CnDmNfU5NGSl72b 2Jzw== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id f69si2888095pjg.43.2019.06.14.10.55.33; Fri, 14 Jun 2019 10:55:33 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726800AbfFNRzc (ORCPT + 17 others); Fri, 14 Jun 2019 13:55:32 -0400 Received: from foss.arm.com ([217.140.110.172]:39710 "EHLO foss.arm.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727700AbfFNRza (ORCPT ); Fri, 14 Jun 2019 13:55:30 -0400 Received: from usa-sjc-imap-foss1.foss.arm.com (unknown [10.121.207.14]) by usa-sjc-mx-foss1.foss.arm.com (Postfix) with ESMTP id 8BDD03EF; Fri, 14 Jun 2019 10:55:29 -0700 (PDT) Received: from en101.cambridge.arm.com (en101.cambridge.arm.com [10.1.196.93]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPA id 88F823F718; Fri, 14 Jun 2019 10:55:28 -0700 (PDT) From: Suzuki K Poulose To: linux-kernel@vger.kernel.org Cc: gregkh@linuxfoundation.org, rafael@kernel.org, suzuki.poulose@arm.com, Elie Morisse , Nehal Shah , Shyam Sundar S K Subject: [PATCH v2 26/28] drivers: Introduce driver_find_next_device() helper Date: Fri, 14 Jun 2019 18:54:21 +0100 Message-Id: <1560534863-15115-27-git-send-email-suzuki.poulose@arm.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1560534863-15115-1-git-send-email-suzuki.poulose@arm.com> References: <1560534863-15115-1-git-send-email-suzuki.poulose@arm.com> Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Add a wrapper for driver_find_device() to find the next device for a given driver from the "start" device. Also convert the existing users to make use of the new helper. Cc: Elie Morisse Cc: Nehal Shah Cc: Shyam Sundar S K Cc: Greg Kroah-Hartman Cc: "Rafael J. Wysocki" Signed-off-by: Suzuki K Poulose --- drivers/i2c/busses/i2c-amd-mp2-pci.c | 8 +------- drivers/s390/cio/ccwgroup.c | 8 +------- include/linux/device.h | 6 ++++++ 3 files changed, 8 insertions(+), 14 deletions(-) -- 2.7.4 diff --git a/drivers/i2c/busses/i2c-amd-mp2-pci.c b/drivers/i2c/busses/i2c-amd-mp2-pci.c index c7fe3b4..5e4800d 100644 --- a/drivers/i2c/busses/i2c-amd-mp2-pci.c +++ b/drivers/i2c/busses/i2c-amd-mp2-pci.c @@ -457,18 +457,12 @@ static struct pci_driver amd_mp2_pci_driver = { }; module_pci_driver(amd_mp2_pci_driver); -static int amd_mp2_device_match(struct device *dev, const void *data) -{ - return 1; -} - struct amd_mp2_dev *amd_mp2_find_device(void) { struct device *dev; struct pci_dev *pci_dev; - dev = driver_find_device(&amd_mp2_pci_driver.driver, NULL, NULL, - amd_mp2_device_match); + dev = driver_find_next_device(&amd_mp2_pci_driver.driver, NULL); if (!dev) return NULL; diff --git a/drivers/s390/cio/ccwgroup.c b/drivers/s390/cio/ccwgroup.c index d843e36..0005ec9 100644 --- a/drivers/s390/cio/ccwgroup.c +++ b/drivers/s390/cio/ccwgroup.c @@ -581,11 +581,6 @@ int ccwgroup_driver_register(struct ccwgroup_driver *cdriver) } EXPORT_SYMBOL(ccwgroup_driver_register); -static int __ccwgroup_match_all(struct device *dev, const void *data) -{ - return 1; -} - /** * ccwgroup_driver_unregister() - deregister a ccw group driver * @cdriver: driver to be deregistered @@ -597,8 +592,7 @@ void ccwgroup_driver_unregister(struct ccwgroup_driver *cdriver) struct device *dev; /* We don't want ccwgroup devices to live longer than their driver. */ - while ((dev = driver_find_device(&cdriver->driver, NULL, NULL, - __ccwgroup_match_all))) { + while ((dev = driver_find_next_device(&cdriver->driver, NULL))) { struct ccwgroup_device *gdev = to_ccwgroupdev(dev); ccwgroup_ungroup(gdev); diff --git a/include/linux/device.h b/include/linux/device.h index f7f6a43..77f817d 100644 --- a/include/linux/device.h +++ b/include/linux/device.h @@ -475,6 +475,12 @@ static inline struct device *driver_find_device_by_devt(struct device_driver *dr return driver_find_device(drv, NULL, &devt, device_match_devt); } +static inline struct device *driver_find_next_device(struct device_driver *drv, + struct device *start) +{ + return driver_find_device(drv, start, NULL, device_match_any); +} + void driver_deferred_probe_add(struct device *dev); int driver_deferred_probe_check_state(struct device *dev);