Received: by 2002:ac0:e350:0:0:0:0:0 with SMTP id g16csp301925imn; Wed, 3 Aug 2022 04:34:43 -0700 (PDT) X-Google-Smtp-Source: AA6agR4DSIsK3k3QAl42hRDmsnR7fnKn/2ifNmHpKoOcscCMb6dYvZN0NscTeqLLtK9czvbZch1R X-Received: by 2002:a17:906:668b:b0:730:a5b7:8985 with SMTP id z11-20020a170906668b00b00730a5b78985mr4481204ejo.548.1659526483589; Wed, 03 Aug 2022 04:34:43 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1659526483; cv=none; d=google.com; s=arc-20160816; b=eMR+b9mt1ZKkF0mmfE2HYG3JZ+7GTmHytGKxuNafjqW0/dlNYTRK27iGFtiCWrM+Dy w/vqK3puotTcCeyUl3/wfKXEtcjjBsRVbL0hniF8aNRVuVFptg3IfAvtSrgUaXVZIJwY /B6lp0VWu0bhEgbVd+BsRey/kcVFvPWBMJKYU+HS6zgTBY7uNkcqM9+owT7c7yx7+X9Y qHrFdHTOe0aBK8M0G51TIBNPquGPWxeX4LGhWtPRexAxf6a6s2e/TcygsWI+PjMJcTzg fRR4Tbhi4Vv94nx96FtbUS/z0Pk+Bg6NXz5hz0019vHzzR5hmLZgS7l0cLQ0XRYolxzB pU4w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=QWoNV73PMehvx7a/jO/4xAYjEo5H0FOcveRTEMgWVQE=; b=0dP0073UFmfSIa4/gV1+49KACLUCjUPIsYfSgdGj6/BO9wJyTP8QQ+fLf/w9mA+Dy0 9NFbrNGFAKSUYoTf/kAB3lxoLoy41q+oK9FFnJKmywu1v2UeFj8PRC1u3kewSRMmWVkR V9u8TYRnWqKTFdCR+dc4ltSUuPT4kqxFEpdm0Y/PCT+JBlKMc1mtrwjZdOBnfIBtMmOD SQComxXEu/ACqKHRfuapHg2PLZzXMo6KkeuJTpwl8UpW7LCJRNqOZEasOQuksYhWN/fp JtVmYiO5o6VBXwer43fAPvoS4NsYVqrSS+GAihrIeYVwCIK52uLfQeHvpR3OPdHiWV5C kTpA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=aDI7HGMN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id sb6-20020a1709076d8600b006feed26a290si17210011ejc.42.2022.08.03.04.34.13; Wed, 03 Aug 2022 04:34:43 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=aDI7HGMN; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 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 S237402AbiHCLcm (ORCPT + 99 others); Wed, 3 Aug 2022 07:32:42 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:52350 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237246AbiHCLck (ORCPT ); Wed, 3 Aug 2022 07:32:40 -0400 Received: from mail-ed1-x533.google.com (mail-ed1-x533.google.com [IPv6:2a00:1450:4864:20::533]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 04B95371B1; Wed, 3 Aug 2022 04:32:39 -0700 (PDT) Received: by mail-ed1-x533.google.com with SMTP id z2so10677490edc.1; Wed, 03 Aug 2022 04:32:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc; bh=QWoNV73PMehvx7a/jO/4xAYjEo5H0FOcveRTEMgWVQE=; b=aDI7HGMNzsTTK/vushA+Zc1k4AFDuhGUhoCQ3ognq967PeVK3U4/TMNg1yC9KcJiF2 eO95Bwjgmx2Vs2GJpLbIwwW9xlIbhKdyybUZFiYqjpYdXMIHdrtSqNlHCUWPEIlKKxH9 shkB910bvZhpVD4FKFZbx83W8Mp8cjqJWJOa4R5qDuAddhWdud61Vq2wQ3yRl5cbiwTS M9AFliPeZThWtmwBltufkmb5VB8H6RBu9QnNrWH+FVxV8WyWKaF7IKQL1oGZC4JxVn9m L/G2AhTqyinVjYROYhur7eI3RFlhjrjdkIf2vpYtn4Q9HDdRMvS+Kp7AGb/jVnfbDdXX 6EGQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-message-state:from:to:cc; bh=QWoNV73PMehvx7a/jO/4xAYjEo5H0FOcveRTEMgWVQE=; b=jqVCmo3gIcGM2nPh9AJOsSHCboPUzNmDw6f1pF/IgvcFqbC37joGkkjF7QJ7KwX5u2 Pw2Yb+bfB8mfWCXH9oe0GSb5Av5K3uKn8wjgxRez2B5EY7GNP/ubzJVOAPjfg+7Ft4Ct dAxIWVsO4lo+BpA+Dpt14hDAxlk8bc1I3v/FKSknSPeTJyt9S0e0aduSGOsg8sZPVeZy isMHW6K39/cxt9OBeD4cVd4Oyj4Twm40ogktmCBeP0CEq8wDasW3sbPb9AuY8VEvMFIU zbemfXZ7sITtv9VoJN3bUEvhDnsD/IvvCt0JHNOaa9fF6Cuq0Q/55BxCpNAfLFQWTxE3 wxGw== X-Gm-Message-State: ACgBeo1tJ0qX700x9T1gDf1BNeWrzK/X1Khzk24mlUGYeDECZw5pfcGX EguVd+ivT4yfk/UQ5F7JaeMOaT2Up+vcbGh6Wbk= X-Received: by 2002:a50:fe91:0:b0:43d:c97d:1b93 with SMTP id d17-20020a50fe91000000b0043dc97d1b93mr11855157edt.67.1659526357473; Wed, 03 Aug 2022 04:32:37 -0700 (PDT) MIME-Version: 1.0 References: <20220803054728.1541104-1-colin.foster@in-advantage.com> <20220803054728.1541104-4-colin.foster@in-advantage.com> In-Reply-To: <20220803054728.1541104-4-colin.foster@in-advantage.com> From: Andy Shevchenko Date: Wed, 3 Aug 2022 13:32:01 +0200 Message-ID: Subject: Re: [PATCH v15 mfd 3/9] pinctrl: ocelot: allow pinctrl-ocelot to be loaded as a module To: Colin Foster Cc: linux-arm Mailing List , "open list:GPIO SUBSYSTEM" , netdev , Linux Kernel Mailing List , devicetree , Terry Bowman , Vladimir Oltean , Wolfram Sang , Microchip Linux Driver Support , Steen Hegelund , Lars Povlsen , Linus Walleij , Paolo Abeni , Jakub Kicinski , Eric Dumazet , "David S. Miller" , Russell King , Heiner Kallweit , Andrew Lunn , Krzysztof Kozlowski , Rob Herring , Lee Jones , katie.morris@in-advantage.com, Florian Fainelli Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_FROM, RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, Aug 3, 2022 at 7:47 AM Colin Foster wrote: > > Work is being done to allow external control of Ocelot chips. When pinctrl > drivers are used internally, it wouldn't make much sense to allow them to > be loaded as modules. In the case where the Ocelot chip is controlled > externally, this scenario becomes practical. FWIW, Reviewed-by: Andy Shevchenko > Signed-off-by: Colin Foster > Reviewed-by: Linus Walleij > Reviewed-by: Florian Fainelli > Reviewed-by: Vladimir Oltean > --- > > (No changes since before v14) > > v14 > * No changes > > --- > drivers/pinctrl/Kconfig | 7 ++++++- > drivers/pinctrl/pinctrl-ocelot.c | 6 +++++- > 2 files changed, 11 insertions(+), 2 deletions(-) > > diff --git a/drivers/pinctrl/Kconfig b/drivers/pinctrl/Kconfig > index f52960d2dfbe..ba48ff8be6e2 100644 > --- a/drivers/pinctrl/Kconfig > +++ b/drivers/pinctrl/Kconfig > @@ -311,7 +311,7 @@ config PINCTRL_MICROCHIP_SGPIO > LED controller. > > config PINCTRL_OCELOT > - bool "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs" > + tristate "Pinctrl driver for the Microsemi Ocelot and Jaguar2 SoCs" > depends on OF > depends on HAS_IOMEM > select GPIOLIB > @@ -321,6 +321,11 @@ config PINCTRL_OCELOT > select GENERIC_PINMUX_FUNCTIONS > select OF_GPIO > select REGMAP_MMIO > + help > + Support for the internal GPIO interfaces on Microsemi Ocelot and > + Jaguar2 SoCs. > + > + If conpiled as a module, the module name will be pinctrl-ocelot. > > config PINCTRL_OXNAS > bool > diff --git a/drivers/pinctrl/pinctrl-ocelot.c b/drivers/pinctrl/pinctrl-ocelot.c > index 5f4a8c5c6650..d18047d2306d 100644 > --- a/drivers/pinctrl/pinctrl-ocelot.c > +++ b/drivers/pinctrl/pinctrl-ocelot.c > @@ -1889,6 +1889,7 @@ static const struct of_device_id ocelot_pinctrl_of_match[] = { > { .compatible = "microchip,lan966x-pinctrl", .data = &lan966x_desc }, > {}, > }; > +MODULE_DEVICE_TABLE(of, ocelot_pinctrl_of_match); > > static struct regmap *ocelot_pinctrl_create_pincfg(struct platform_device *pdev) > { > @@ -1984,4 +1985,7 @@ static struct platform_driver ocelot_pinctrl_driver = { > }, > .probe = ocelot_pinctrl_probe, > }; > -builtin_platform_driver(ocelot_pinctrl_driver); > +module_platform_driver(ocelot_pinctrl_driver); > + > +MODULE_DESCRIPTION("Ocelot Chip Pinctrl Driver"); > +MODULE_LICENSE("Dual MIT/GPL"); > -- > 2.25.1 > -- With Best Regards, Andy Shevchenko