[{"id":3189728,"web_url":"http://patchwork.ozlabs.org/comment/3189728/","msgid":"<CACRpkda0XnLtNwp-sQhS=SKqPB+zce7ZJpEeKnJbGmfsL=p_Qw@mail.gmail.com>","list_archive_url":null,"date":"2023-09-28T21:15:06","subject":"Re: [PATCH v2 1/3] gpiolib: of: Allow \"trigger-sources\" to reference\n a GPIO","submitter":{"id":7055,"url":"http://patchwork.ozlabs.org/api/people/7055/","name":"Linus Walleij","email":"linus.walleij@linaro.org"},"content":"On Tue, Sep 26, 2023 at 11:48 PM Linus Walleij <linus.walleij@linaro.org> wrote:\n\n> The \"trigger-sources\" phandle used for LED triggers are special:\n> the DT bindings mandate that such triggers have the same phandle\n> references no matter what the trigger is. A GPIO is just another\n> kind of device that can trigger a LED.\n>\n> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n\nBartosz could you queue this patch? Lee already queued patches 2+3,\nand there is just runtime dependency with no in-tree users so it's fine\nto merge them in the different trees.\n\nSorry for missing to CC you directly on the set :/\n\nYours,\nLinus Walleij","headers":{"Return-Path":"<linux-gpio-owner@vger.kernel.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=linaro.org header.i=@linaro.org header.a=rsa-sha256\n header.s=google header.b=V3QrO3PK;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2620:137:e000::1:20; helo=out1.vger.email;\n envelope-from=linux-gpio-owner@vger.kernel.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from out1.vger.email (out1.vger.email [IPv6:2620:137:e000::1:20])\n\tby legolas.ozlabs.org (Postfix) with ESMTP id 4RxR8W6Xk9z1ypT\n\tfor <incoming@patchwork.ozlabs.org>; Fri, 29 Sep 2023 07:15:23 +1000 (AEST)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n        id S231676AbjI1VPV (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n        Thu, 28 Sep 2023 17:15:21 -0400","from lindbergh.monkeyblade.net ([23.128.96.19]:37370 \"EHLO\n        lindbergh.monkeyblade.net\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n        with ESMTP id S230325AbjI1VPV (ORCPT\n        <rfc822;linux-gpio@vger.kernel.org>); Thu, 28 Sep 2023 17:15:21 -0400","from mail-yb1-xb30.google.com (mail-yb1-xb30.google.com\n [IPv6:2607:f8b0:4864:20::b30])\n        by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 697FD19D\n        for <linux-gpio@vger.kernel.org>;\n Thu, 28 Sep 2023 14:15:18 -0700 (PDT)","by mail-yb1-xb30.google.com with SMTP id\n 3f1490d57ef6-d81b42a3108so15219725276.1\n        for <linux-gpio@vger.kernel.org>;\n Thu, 28 Sep 2023 14:15:18 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=linaro.org; s=google; t=1695935717; x=1696540517;\n darn=vger.kernel.org;\n        h=content-transfer-encoding:cc:to:subject:message-id:date:from\n         :in-reply-to:references:mime-version:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=zMae55Fx7PiApDYXyPzKPPdkwhRMRqPd7wXKmf/Imiw=;\n        b=V3QrO3PKQm9H77cDdo64Sx3GKFC9R0/AE55TYuvlRWvAc38QhOX3skh4W/5A8B3S6v\n         wRN7Clf1QRkmqa0FYiqOW0Mz0H02ARktho3VUFYk2r0SHBqvSLyWa5f9wz6FaTJjd2Ui\n         HR0QYYZQlkvV3wnTLuUYGizNl+F1B3P7TTKaUICfy3dfiLsRYJDgEVX6NkMtoEnQF63/\n         ckabajfDmYZXifx0zoG/OlGFeXeGetgLsiDevIs8+JeJobnnAm2oKeOnOyeTvOel5AZQ\n         KYsjBRbsecZVyJVmHK8fIKhOzpU2HW9p0Y9BtMwj1z0mnM81SJ0+eUH/3XOQpnWLleUS\n         +AVg==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20230601; t=1695935717; x=1696540517;\n        h=content-transfer-encoding:cc:to:subject:message-id:date:from\n         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc\n         :subject:date:message-id:reply-to;\n        bh=zMae55Fx7PiApDYXyPzKPPdkwhRMRqPd7wXKmf/Imiw=;\n        b=FGzubvFBiouV0R3PrT7kG1pgsBu6AgNwLxDBKGSeTKYka8VUFfw0nYWrsHEO0pJv32\n         A1X2sJfXN6PxI0xJGztrTxH/oP4aD8jYP7Lt5+4SaaKhqRYJGnrzIjvprsfuQMLQ0Kwc\n         yUfcOnBHvS1agb/F6vpvzo50AZ6lmTU1IQWT0v/AK8lkDk283qvmHN8370QhfX+epdUA\n         s5Q0cnG1S/l7+7TsmoMTofi2n/ebN30kqaOvwAM7WVUIK5BuCAZo4feLsSmAPhyt+JsN\n         v1+4Uv4NyjfD1Oal/faVXgrxQOQQ51zT+8zyh+OohC27ARr5PCxJPM1+LqrbaenkR2rG\n         NU/A==","X-Gm-Message-State":"AOJu0YzehJzLMAoNYxP2HVwoo+dkGF7UwFCwZwjUJgqK11aV6SU3uSQ5\n        TpYK7mCChgFHhozQ/SCbANeaNYHL5r1NgDysU5k6rg==","X-Google-Smtp-Source":"\n AGHT+IEx5vmOlgc90YGcN9ELfymxnTjl5jH5W/7HnoFi7r9aFnJqkqfFU0S8v8Bpml17IwCuy4WjLkmqcJSWej8jc+E=","X-Received":"by 2002:a25:ca8b:0:b0:d80:9ed:5038 with SMTP id\n a133-20020a25ca8b000000b00d8009ed5038mr2385007ybg.21.1695935717623; Thu, 28\n Sep 2023 14:15:17 -0700 (PDT)","MIME-Version":"1.0","References":"<20230926-gpio-led-trigger-dt-v2-0-e06e458b788e@linaro.org>\n <20230926-gpio-led-trigger-dt-v2-1-e06e458b788e@linaro.org>","In-Reply-To":"<20230926-gpio-led-trigger-dt-v2-1-e06e458b788e@linaro.org>","From":"Linus Walleij <linus.walleij@linaro.org>","Date":"Thu, 28 Sep 2023 23:15:06 +0200","Message-ID":"\n <CACRpkda0XnLtNwp-sQhS=SKqPB+zce7ZJpEeKnJbGmfsL=p_Qw@mail.gmail.com>","Subject":"Re: [PATCH v2 1/3] gpiolib: of: Allow \"trigger-sources\" to reference\n a GPIO","To":"=?utf-8?q?Jan_Kundr=C3=A1t?= <jan.kundrat@cesnet.cz>,\n Pavel Machek <pavel@ucw.cz>, Lee Jones <lee@kernel.org>,\n Rob Herring <robh+dt@kernel.org>,\n Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,\n Conor Dooley <conor+dt@kernel.org>,\n Jacek Anaszewski <jacek.anaszewski@gmail.com>,\n Bartosz Golaszewski <brgl@bgdev.pl>","Cc":"linux-leds@vger.kernel.org, linux-gpio@vger.kernel.org,\n        devicetree@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","X-Spam-Status":"No, score=-2.1 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n        DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_NONE,\n        SPF_HELO_NONE,SPF_PASS autolearn=unavailable autolearn_force=no\n        version=3.4.6","X-Spam-Checker-Version":"SpamAssassin 3.4.6 (2021-04-09) on\n        lindbergh.monkeyblade.net","Precedence":"bulk","List-ID":"<linux-gpio.vger.kernel.org>","X-Mailing-List":"linux-gpio@vger.kernel.org"}},{"id":3190968,"web_url":"http://patchwork.ozlabs.org/comment/3190968/","msgid":"<CAMRc=MecwZRE=2jG-24hFZaKZW2GdUBzD0FBYfh8Vce69qH84w@mail.gmail.com>","list_archive_url":null,"date":"2023-10-02T07:45:58","subject":"Re: [PATCH v2 1/3] gpiolib: of: Allow \"trigger-sources\" to reference\n a GPIO","submitter":{"id":71346,"url":"http://patchwork.ozlabs.org/api/people/71346/","name":"Bartosz Golaszewski","email":"brgl@bgdev.pl"},"content":"On Wed, Sep 27, 2023 at 12:41 AM Linus Walleij <linus.walleij@linaro.org> wrote:\n>\n> The \"trigger-sources\" phandle used for LED triggers are special:\n> the DT bindings mandate that such triggers have the same phandle\n> references no matter what the trigger is. A GPIO is just another\n> kind of device that can trigger a LED.\n>\n> Signed-off-by: Linus Walleij <linus.walleij@linaro.org>\n> ---\n>  drivers/gpio/gpiolib-of.c | 28 ++++++++++++++++++++++++++++\n>  1 file changed, 28 insertions(+)\n>\n> diff --git a/drivers/gpio/gpiolib-of.c b/drivers/gpio/gpiolib-of.c\n> index 531faabead0f..f4a660bf11fd 100644\n> --- a/drivers/gpio/gpiolib-of.c\n> +++ b/drivers/gpio/gpiolib-of.c\n> @@ -611,6 +611,33 @@ static struct gpio_desc *of_find_mt2701_gpio(struct device_node *np,\n>         return desc;\n>  }\n>\n> +/*\n> + * Trigger sources are special, they allow us to use any GPIO as a LED trigger\n> + * and have the name \"trigger-sources\" no matter which kind of phandle it is\n> + * pointing to, whether to a GPIO, a USB host, a network PHY etc. So in this case\n> + * we allow looking something up that is not named \"foo-gpios\".\n> + */\n> +static struct gpio_desc *of_find_trigger_gpio(struct device_node *np,\n> +                                             const char *con_id,\n> +                                             unsigned int idx,\n> +                                             enum of_gpio_flags *of_flags)\n> +{\n> +       struct gpio_desc *desc;\n> +\n> +       if (!IS_ENABLED(CONFIG_LEDS_TRIGGER_GPIO))\n> +               return ERR_PTR(-ENOENT);\n> +\n> +       if (!con_id || strcmp(con_id, \"trigger-sources\"))\n> +               return ERR_PTR(-ENOENT);\n> +\n> +       desc = of_get_named_gpiod_flags(np, con_id, idx, of_flags);\n> +       if (!gpiod_not_found(desc))\n> +               pr_debug(\"%s is used as a trigger\\n\", of_node_full_name(np));\n> +\n> +       return desc;\n> +}\n> +\n> +\n>  typedef struct gpio_desc *(*of_find_gpio_quirk)(struct device_node *np,\n>                                                 const char *con_id,\n>                                                 unsigned int idx,\n> @@ -618,6 +645,7 @@ typedef struct gpio_desc *(*of_find_gpio_quirk)(struct device_node *np,\n>  static const of_find_gpio_quirk of_find_gpio_quirks[] = {\n>         of_find_gpio_rename,\n>         of_find_mt2701_gpio,\n> +       of_find_trigger_gpio,\n>         NULL\n>  };\n>\n>\n> --\n> 2.34.1\n>\n\nQueued, thanks!\n\nBart","headers":{"Return-Path":"<linux-gpio-owner@vger.kernel.org>","X-Original-To":"incoming@patchwork.ozlabs.org","Delivered-To":"patchwork-incoming@legolas.ozlabs.org","Authentication-Results":["legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=bgdev-pl.20230601.gappssmtp.com\n header.i=@bgdev-pl.20230601.gappssmtp.com header.a=rsa-sha256\n header.s=20230601 header.b=SXOL3One;\n\tdkim-atps=neutral","legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2620:137:e000::1:20; helo=out1.vger.email;\n envelope-from=linux-gpio-owner@vger.kernel.org;\n receiver=patchwork.ozlabs.org)"],"Received":["from out1.vger.email (out1.vger.email [IPv6:2620:137:e000::1:20])\n\tby legolas.ozlabs.org (Postfix) with ESMTP id 4RzY140kXJz1yng\n\tfor <incoming@patchwork.ozlabs.org>; Mon,  2 Oct 2023 18:46:16 +1100 (AEDT)","(majordomo@vger.kernel.org) by vger.kernel.org via listexpand\n        id S230011AbjJBHqO (ORCPT <rfc822;incoming@patchwork.ozlabs.org>);\n        Mon, 2 Oct 2023 03:46:14 -0400","from lindbergh.monkeyblade.net ([23.128.96.19]:52774 \"EHLO\n        lindbergh.monkeyblade.net\" rhost-flags-OK-OK-OK-OK) by vger.kernel.org\n        with ESMTP id S229853AbjJBHqO (ORCPT\n        <rfc822;linux-gpio@vger.kernel.org>); Mon, 2 Oct 2023 03:46:14 -0400","from mail-vk1-xa30.google.com (mail-vk1-xa30.google.com\n [IPv6:2607:f8b0:4864:20::a30])\n        by lindbergh.monkeyblade.net (Postfix) with ESMTPS id B94FCC6\n        for <linux-gpio@vger.kernel.org>;\n Mon,  2 Oct 2023 00:46:10 -0700 (PDT)","by mail-vk1-xa30.google.com with SMTP id\n 71dfb90a1353d-499e2dd41ccso5766143e0c.1\n        for <linux-gpio@vger.kernel.org>;\n Mon, 02 Oct 2023 00:46:10 -0700 (PDT)"],"DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=bgdev-pl.20230601.gappssmtp.com; s=20230601; t=1696232770;\n x=1696837570; darn=vger.kernel.org;\n        h=content-transfer-encoding:cc:to:subject:message-id:date:from\n         :in-reply-to:references:mime-version:from:to:cc:subject:date\n         :message-id:reply-to;\n        bh=pqvIhDje53OxVjVG4IMyzH0AYEEkPwbJqHOXxnNcgoM=;\n        b=SXOL3OnegeiKvhOsAGCB3Z2flJAWFYAsueQD1ka1JmjmpcdF8/YzstXeyADEsBXeyS\n         WUX1p7SyVJmv1BVQKMeoTRnfUe8tyfjVbT5KZq4KHVqRLXctbboZ8dkxam5Ids0zmF6f\n         SHyHnXQP36idqVRVjQNFlkPNeP9N/hbTdgEOxwjWejC4nFbAgHqgmThZeuxeDj2D5HNY\n         c6hHkSUPgAmnrn4ncdmp3KjwzEcvDYdhDUHggjVp4jyfJv6OuRA7oVX8uESPWITK6lFZ\n         MLai1PCfESWD73Mzjdr3yyQL/55CIqBg56UkmTErOcvlfluRENDXSY+X5Myc7Ue6ZcgG\n         wTVw==","X-Google-DKIM-Signature":"v=1; a=rsa-sha256; c=relaxed/relaxed;\n        d=1e100.net; s=20230601; t=1696232770; x=1696837570;\n        h=content-transfer-encoding:cc:to:subject:message-id:date:from\n         :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc\n         :subject:date:message-id:reply-to;\n        bh=pqvIhDje53OxVjVG4IMyzH0AYEEkPwbJqHOXxnNcgoM=;\n        b=n0+xzZ4552Br8vd1aVQnyEq9DfS1SW9GMT+M04ksY0d1x//21bMLGx0q2hy6SS3LHm\n         3ooJJ+zokzU0VPcPW+aDtH2fvoH+o6hbTFugoQgjSqdSG4MAeQXspw59kbiBJyti+oHA\n         BBZnteNltQOPuZfpch1dViSzNf68DfBy8jk2tQcvOldP7FhsV1YbEpXfPgSt7aO1BRCo\n         rLARqaGivr4r+Nos3gp497FzAC8YDNmn5YjPp8MOo2gFu2Xm3PIUu9nJHcg9SR9liIRJ\n         K0r2XTROf7HIdAynCwr7aaF5jTuf+7grZlK2e4iYqp6GYQAZk0l18y9Q5BSVniCYNXN3\n         Tc3g==","X-Gm-Message-State":"AOJu0YwYXu9NKRhXe4I6LxtrM7rZ3kMGmQogXHUQxlVV5XBhizmzW7Tr\n        7XyFHpMjOfQVl9B/RJ0JHii9AcbKpiXAMQdd/Peqww==","X-Google-Smtp-Source":"\n AGHT+IHTpV2uxpyu37sYvaeFFlRCZLBZ48HAtumXYT6TL0P81tfHDEtcfQx3wfacL8SBXAzjoUIJNk0tgavHfPNw63U=","X-Received":"by 2002:a05:6122:9a9:b0:49d:d91:8b27 with SMTP id\n g41-20020a05612209a900b0049d0d918b27mr8582974vkd.2.1696232769830; Mon, 02 Oct\n 2023 00:46:09 -0700 (PDT)","MIME-Version":"1.0","References":"<20230926-gpio-led-trigger-dt-v2-0-e06e458b788e@linaro.org>\n <20230926-gpio-led-trigger-dt-v2-1-e06e458b788e@linaro.org>","In-Reply-To":"<20230926-gpio-led-trigger-dt-v2-1-e06e458b788e@linaro.org>","From":"Bartosz Golaszewski <brgl@bgdev.pl>","Date":"Mon, 2 Oct 2023 09:45:58 +0200","Message-ID":"\n <CAMRc=MecwZRE=2jG-24hFZaKZW2GdUBzD0FBYfh8Vce69qH84w@mail.gmail.com>","Subject":"Re: [PATCH v2 1/3] gpiolib: of: Allow \"trigger-sources\" to reference\n a GPIO","To":"Linus Walleij <linus.walleij@linaro.org>","Cc":"=?utf-8?q?Jan_Kundr=C3=A1t?= <jan.kundrat@cesnet.cz>,\n Pavel Machek <pavel@ucw.cz>, Lee Jones <lee@kernel.org>,\n Rob Herring <robh+dt@kernel.org>,\n Krzysztof Kozlowski <krzysztof.kozlowski+dt@linaro.org>,\n Conor Dooley <conor+dt@kernel.org>,\n Jacek Anaszewski <jacek.anaszewski@gmail.com>, linux-leds@vger.kernel.org,\n linux-gpio@vger.kernel.org, devicetree@vger.kernel.org","Content-Type":"text/plain; charset=\"UTF-8\"","Content-Transfer-Encoding":"quoted-printable","X-Spam-Status":"No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED,\n        DKIM_VALID,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_NONE\n        autolearn=unavailable autolearn_force=no version=3.4.6","X-Spam-Checker-Version":"SpamAssassin 3.4.6 (2021-04-09) on\n        lindbergh.monkeyblade.net","Precedence":"bulk","List-ID":"<linux-gpio.vger.kernel.org>","X-Mailing-List":"linux-gpio@vger.kernel.org"}}]