From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 49EF7C3DA64 for ; Thu, 1 Aug 2024 06:23:56 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender:List-Subscribe:List-Help :List-Post:List-Archive:List-Unsubscribe:List-Id:Cc:To: Content-Transfer-Encoding:Content-Type:MIME-Version:Message-Id:Date:Subject: From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=LpZoniC9aGWhhQPl4KxSQTXk6eBLt8rUCgY1jOlHdxc=; b=khSlaq0MDm8ey/ TV7Ng7PqzuxhwkqbeNjC5aHIFgnJ9I7rJPfOWRQ8h1ECZ6bzHCr7Ay4ZF09LOwMYf86f30F+uwovA s4Pe1PjqkxNUzCKfaq4pCvdzzT0be0Kn+aAISWfDq0UWXIZ+SJc9BuMwsuPH0b/spmX8TiA2sU+Rk sjyirPIcA4/PEQhy4rQamhaEv8otyBefMnX3bln10/y1kNSB2PZ4y5FDXf0GpIMB37auh6+SaILB5 BlNfACCES42tmukAh4RpE5Sp9bxJ58GyB4dkRQvtjfqVUtjNhUtL852j1roeA+EhdI0bP6viG8Rng r4azUjF4C1xZ/tbH9fKg==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.97.1 #2 (Red Hat Linux)) id 1sZPE2-00000003z4q-3L3g; Thu, 01 Aug 2024 06:23:46 +0000 Received: from mail-wr1-x431.google.com ([2a00:1450:4864:20::431]) by bombadil.infradead.org with esmtps (Exim 4.97.1 #2 (Red Hat Linux)) id 1sZP4X-00000003uMq-2LLD for linux-arm-kernel@lists.infradead.org; Thu, 01 Aug 2024 06:14:00 +0000 Received: by mail-wr1-x431.google.com with SMTP id ffacd0b85a97d-36887ca3da2so3028059f8f.2 for ; Wed, 31 Jul 2024 23:13:56 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1722492835; x=1723097635; darn=lists.infradead.org; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:from:to:cc:subject:date:message-id:reply-to; bh=LpZoniC9aGWhhQPl4KxSQTXk6eBLt8rUCgY1jOlHdxc=; b=nWmLuSGvq13hhRFy/Te4dTSCFTAKOrBJQyV4FvMtL9k9Aix6Jh6o23ABHrxJT/Ip2p SQq8EyUySbv4GaikR3k7PK6UxMhHl/PNTn+QkVUIjOsoXU0tYbpHp3EGK6di/yn3BODW LA218Fb7DR029Jm0zrFPauINtvQSrQVh8vWC9gXhVf0sCKhJWsbuTVpYiu0i3XZBuATQ rVLSJjIKxCBzFF0Rv5KclHqwWI7fpOw3UXqiXtS2Am4vFDpcTRUKZCNygiU576fbp/WT QwTa9Zyk2Upw8ji2mhO0PXEmoeCaQ/CEWw/1RQNU00ZdK0jQt3nxr0jUcnnwKDVM2R/y xWRw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1722492835; x=1723097635; h=cc:to:content-transfer-encoding:mime-version:message-id:date :subject:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=LpZoniC9aGWhhQPl4KxSQTXk6eBLt8rUCgY1jOlHdxc=; b=qgodpG0YpY4aZW3897DPxeibTwTOzUyTg7ocy8w+7/PxII8fvqgcxGs1XVB7L/efzq 1/jRbm5OXQtl6Tyl88aF0QBULQBdcSIDKQebuaUCTZ0gru9I2+Jfq8oSyB94lrKRX3ev Mc3CU9dkG+JU9d/pEINFk6eakb0gDdRiLAjj/LsLkTxYBOBIp5aLa7Xe6vU79VKzkLZK RnHOrRaHKNqcOukkMu8KX4DqmzrVRqybbiGL4Q5Q3Dz2HzMLp/RkCjS98TADF2PPbxr4 +PfkKbFxpfYdP43tTPhP5Ze33/KzkIPMETQEbPL+fRJUNMuG2sOilTAtSqboUeh88sdo Ti2Q== X-Forwarded-Encrypted: i=1; AJvYcCUscfov/LpNekgsuwlhGSMGBKTX58dEnzQC0xLMonnWHUCe4vOuGNpwqAREAPREA1rNUAks/t/kmBl2TZHqxMMY9n7EshJ7NchRVrXZgjEdpdBf6KQ= X-Gm-Message-State: AOJu0Yx35cQWNokP8FTZZEd/tw2xwqINM+eeNXubmPyg3XyUwSeMFqaM RsYyqKK5zX4820uoolyg4cEasrNQjudAVBxifxK1XxHUWb2fq0J0 X-Google-Smtp-Source: AGHT+IHgSigxKibSRNszBbncxsrZsGIOUSoFP5nNFj8lRYB/6WsJHEPiu7TN3luJz3urFUbqPz4jtw== X-Received: by 2002:a5d:5c87:0:b0:36b:b2a1:ef8f with SMTP id ffacd0b85a97d-36bb2a1f24cmr284611f8f.12.1722492835171; Wed, 31 Jul 2024 23:13:55 -0700 (PDT) Received: from [127.0.1.1] ([213.208.157.67]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-36b367c032bsm18696455f8f.12.2024.07.31.23.13.53 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 31 Jul 2024 23:13:54 -0700 (PDT) From: Javier Carrasco Subject: [PATCH 0/4] use device_for_each_child_node_scoped to access device child nodes Date: Thu, 01 Aug 2024 08:13:49 +0200 Message-Id: <20240801-device_child_node_access-v1-0-ddfa21bef6f2@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: 7bit X-B4-Tracking: v=1; b=H4sIAJ0nq2YC/x2MQQqAIBAAvxJ7TjCzor4SIbJutRAWLkQg/T3pO DAzGYQSk8BUZUh0s/AZCzR1Bbj7uJHiUBiMNlYPplOhSEgOdz6Ci2cg5xFJRFlrurYdG+37FUp +JVr5+dfz8r4f/WQ0TmoAAAA= To: Suzuki K Poulose , Mike Leach , James Clark , Alexander Shishkin , Michael Hennerich , Lars-Peter Clausen , Jonathan Cameron , Anand Ashok Dumbre , Michal Simek , Sakari Ailus , Pavel Machek , Lee Jones Cc: coresight@lists.linaro.org, linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, linux-iio@vger.kernel.org, linux-leds@vger.kernel.org, Javier Carrasco X-Mailer: b4 0.14-dev X-Developer-Signature: v=1; a=ed25519-sha256; t=1722492833; l=1920; i=javier.carrasco.cruz@gmail.com; s=20240312; h=from:subject:message-id; bh=fc+eWoT+LUWW3yjjk7EjbxBRAISO588WL1qR/MTsMzI=; b=Elzh0dkw5RRQVgd+a4xxoB5RdMJIejjHBeacEjAt9fRiG3ZGwzqHow7y2Mr/pozrvCL+CbSsp /OCLRePI0XKAPZ/Antaq4FNguQIRjb+DUFeBg3Bky5MJZH1jkHyL4fz X-Developer-Key: i=javier.carrasco.cruz@gmail.com; a=ed25519; pk=lzSIvIzMz0JhJrzLXI0HAdPwsNPSSmEn6RbS+PTS9aQ= X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20240731_231357_729870_0A525AA5 X-CRM114-Status: GOOD ( 11.36 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org This series removes accesses to the device `fwnode` to iterate over its own child nodes. Using the `device_for_each_child_node` macro provides direct access to the device child nodes, and given that in all cases they are only required within the loop, the scoped variant of the macro can be used. It has been stated in previous discussions [1] that `device_for_each_*` should be used to access device child nodes, removing the need to access its internal fwnode, and restricting `fwnode_for_each_*` to traversing subnodes when required. Note that `device_for_each_*` implies availability, which means that after this conversion, unavailable nodes will not be accessible within the loop. The affected drivers does not seem to have any reason to iterate over unavailable nodes, though. But if someone has a case where the affected drivers might require accessing unavailable nodes, please let me know. Link: https://lore.kernel.org/linux-hwmon/cffb5885-3cbc-480c-ab6d-4a442d1afb8a@gmail.com/ [1] Signed-off-by: Javier Carrasco --- Javier Carrasco (4): coresight: cti: use device_* to iterate over device child nodes iio: adc: ad7768-1: use device_* to iterate over device child nodes iio: adc: xilinx-ams: use device_* to iterate over device child nodes leds: as3645a: use device_* to iterate over device child nodes drivers/hwtracing/coresight/coresight-cti-platform.c | 10 +++------- drivers/iio/adc/ad7768-1.c | 5 +---- drivers/iio/adc/xilinx-ams.c | 7 ++----- drivers/leds/flash/leds-as3645a.c | 8 +++----- 4 files changed, 9 insertions(+), 21 deletions(-) --- base-commit: cd19ac2f903276b820f5d0d89de0c896c27036ed change-id: 20240725-device_child_node_access-442533910a6f Best regards, -- Javier Carrasco