Received: by 2002:a05:6a10:2726:0:0:0:0 with SMTP id ib38csp5312581pxb; Mon, 28 Mar 2022 10:46:06 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxqxXT/9NgSoBVTh3rSX+DhZd7nxHMEVsLqDkcqqNhqP8Eov9ztWf6nrBDlFFGufte5qkQG X-Received: by 2002:a17:906:144e:b0:6ce:6126:6a6d with SMTP id q14-20020a170906144e00b006ce61266a6dmr28507876ejc.662.1648489565765; Mon, 28 Mar 2022 10:46:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1648489565; cv=none; d=google.com; s=arc-20160816; b=tLpgAOOXcusuXPggXYFZwJd5yQ5fRNfsiC0btZi7a1L5epJtgeaFcsAL1o38f4vO2C 3YY7SMFaXsZH+i5hubWMbDnX061g8zCHVc3GBMrg1gzIsp7uzTcSng6asf5QS+195/wf Y7oEvgNOATJdq0l+s5KgrLvSHfhmfDVwSPtJ6iSVv+lGVses9fJ7HYf95oU9dmPDNYEh PFOdzDuEZ7yOlyDan8winJb+X0UCPHrzhgwJ4KeZ3hHxSPz3dBLOjIYDvIxMjdo/00Yo SGw69CBQZAX//lbHlIX3pefWbWNm9gDgpzQJasye3IAkTc97qnI9hL1DFU4hnXyJV3Tr WhoA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version; bh=WHSZ6TAHUittIX41lHf/fGBZjRp8oCSVlUMr0PEe/48=; b=tqYwXKQiOET2mMRAqmySufzi5c1EpcTrQTI4WX7z9ETBVaPSIAc//tlPe9K225KfBt WxMqGaBc8MqxzLPUO7ldqk34fID/HXd6T9Q68izSblKocVlK8K9LN9WltqjC1muoHHRJ wiLSzgvnkB7xNK6Nf8uhPZ5fGU9hQf9cXRqkEi3sdRaAYLOsHXBoIj2MAZq/EutctJgd wNMo5nR0EF0RQsmcTNcUiBkaFAB3oHQqTZ2bPadC9zPmRaFTjbbQE1xoDpylGDuSxk+n APXfvIfsmCtBkJxRfyNan478wH5rjBL9vGj7reRmSUVDqSjyBdnDY2XOzpJrh+hk5O30 QvOQ== ARC-Authentication-Results: i=1; mx.google.com; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id g7-20020a1709061c8700b006df76385cb6si12821069ejh.342.2022.03.28.10.45.39; Mon, 28 Mar 2022 10:46:05 -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; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238854AbiC1HhW convert rfc822-to-8bit (ORCPT + 99 others); Mon, 28 Mar 2022 03:37:22 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48316 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S238843AbiC1HhT (ORCPT ); Mon, 28 Mar 2022 03:37:19 -0400 Received: from mail-qv1-f41.google.com (mail-qv1-f41.google.com [209.85.219.41]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id AAA2F51E5B; Mon, 28 Mar 2022 00:35:38 -0700 (PDT) Received: by mail-qv1-f41.google.com with SMTP id b17so1566277qvf.12; Mon, 28 Mar 2022 00:35:38 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=NSmS9k73z1IP3D2QdHYwh4TDW9fTJmU9UMoo6xsufQI=; b=acfAYp2ABR1gjv+B5A6ocgOn4nsKn1gDGOGBIPK/n/joHLigwfGyWK/wkD7lqsjuLg EgrY8JyXT/a8Td3oSgP6Vt05Vsd7nc3TxeSybqhrwUz4R2SnPVEZECwQJbODVQVYNYyc Xg3Rynz44u6FBUoMfgEA22Bl6FtmI08H3IaeuyBqllTk1haPQNOSdA/4aGAcHO/syCFX Kb0zU5fIEQtnpT6hAsbIe+xoj9VvpT+aM/aNUp678J2zjXxcK4fBxuruhm4Rul79fBei AgvPDPEbIVZGZisGyRry6btbDljNyzbYIdvFJbpDHGeR3FGSSqo93mAVkFYYnbMKF+J0 kowQ== X-Gm-Message-State: AOAM531EKenaGCIjUCYy4KyURRamXVxvODdCCtPN3fohEjEgXw0NyP1j MY+BvnOk857+mAaRkmaI1OQs9RZH3FtZJg== X-Received: by 2002:a05:6214:2a49:b0:441:69b0:84c7 with SMTP id jf9-20020a0562142a4900b0044169b084c7mr19452797qvb.122.1648452937649; Mon, 28 Mar 2022 00:35:37 -0700 (PDT) Received: from mail-yb1-f175.google.com (mail-yb1-f175.google.com. [209.85.219.175]) by smtp.gmail.com with ESMTPSA id x6-20020a376306000000b0067b32a8568esm7815817qkb.101.2022.03.28.00.35.36 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 28 Mar 2022 00:35:37 -0700 (PDT) Received: by mail-yb1-f175.google.com with SMTP id g9so22079449ybf.1; Mon, 28 Mar 2022 00:35:36 -0700 (PDT) X-Received: by 2002:a05:6902:101:b0:633:ccde:cfca with SMTP id o1-20020a056902010100b00633ccdecfcamr20853450ybh.207.1648452936744; Mon, 28 Mar 2022 00:35:36 -0700 (PDT) MIME-Version: 1.0 References: <20220325200338.54270-1-andriy.shevchenko@linux.intel.com> In-Reply-To: <20220325200338.54270-1-andriy.shevchenko@linux.intel.com> From: Geert Uytterhoeven Date: Mon, 28 Mar 2022 09:35:25 +0200 X-Gmail-Original-Message-ID: Message-ID: Subject: Re: [PATCH v1 1/5] gpiolib: Introduce gpiochip_count() helper To: Andy Shevchenko Cc: Gregory CLEMENT , Geert Uytterhoeven , Fabien Dessenne , Linus Walleij , "open list:GPIO SUBSYSTEM" , Linux ARM , "open list:ARM/Amlogic Meson..." , Linux Kernel Mailing List , Linux-Renesas , linux-stm32@st-md-mailman.stormreply.com, Neil Armstrong , Kevin Hilman , Jerome Brunet , Martin Blumenstingl , Andrew Lunn , Sebastian Hesselbarth , Maxime Coquelin , Alexandre Torgue , Bartosz Golaszewski Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 8BIT X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00, FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM,HEADER_FROM_DIFFERENT_DOMAINS, RCVD_IN_DNSWL_NONE,RCVD_IN_MSPIKE_H2,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE autolearn=no 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 Hi Andy, On Fri, Mar 25, 2022 at 9:04 PM Andy Shevchenko wrote: > The gpiochip_count() helper iterates over the device child nodes that have > the "gpio-controller" property set. It returns the number of such nodes > under given device. > > Signed-off-by: Andy Shevchenko Thanks for your patch! > --- a/include/linux/gpio/driver.h > +++ b/include/linux/gpio/driver.h > @@ -750,4 +751,17 @@ static inline void gpiochip_unlock_as_irq(struct gpio_chip *gc, > } > #endif /* CONFIG_GPIOLIB */ > > +static inline unsigned int gpiochip_count(struct device *dev) > +{ > + struct fwnode_handle *child; > + unsigned int count = 0; > + > + device_for_each_child_node(dev, child) { > + if (device_property_read_bool(child, "gpio-controller")) error: passing argument 1 of ‘device_property_read_bool’ from incompatible pointer type [-Werror=incompatible-pointer-types] So I'm afraid I cannot test patch 3/5 yet ;-) > + count++; > + } > + > + return count; > +} > + > #endif /* __LINUX_GPIO_DRIVER_H */ Gr{oetje,eeting}s, Geert -- Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org In personal conversations with technical people, I call myself a hacker. But when I'm talking to journalists I just say "programmer" or something like that. -- Linus Torvalds