Received: by 2002:a05:7412:f584:b0:e2:908c:2ebd with SMTP id eh4csp2027523rdb; Tue, 5 Sep 2023 12:02:09 -0700 (PDT) X-Google-Smtp-Source: AGHT+IGs2LjmzdJwagm6W7i/zXy7qc09OSF02k/bp3qFI2nmhk8yT2IYHx4HO+/ngwsUcVJ98bbi X-Received: by 2002:a05:6870:f61b:b0:1d0:e372:6cf8 with SMTP id ek27-20020a056870f61b00b001d0e3726cf8mr14454759oab.2.1693940528566; Tue, 05 Sep 2023 12:02:08 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1693940528; cv=none; d=google.com; s=arc-20160816; b=MOSOenbMAUxLDNs/8ZkUxMmqvCtv+R1NGFTQW9DKq1TLYXpM4fbObVgncSIXquVuzo KHntQ4C8jObjSxXOQqFz2GxaTfKq39ymzAgK8UjfnrK4ATycOJHHCbzLPdsG+8wCQDkl EZeocyKYhc1AiTEETwNFSA1JjvljCEqognLDDafgb4xDPwQUKxG4BGnKiaaj83Mcin2e TRVu9gkLiV6anDp3pTnCfxJ0O72k/rS+74mKF4KkRbhfSGyOFU/6xBIjwaEpAJUSgA0R iY054R61h1fsVZif9B3VktpuTCnNbT/v/tRpE97iVJnS6G5frO1WuqG/KVwzzwYYmb41 hPKw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:content-language:subject:user-agent:mime-version :date:message-id; bh=B2WBgbsuZeuPEftmMcSd6kWD4xAoyb8L343fk5+fsNo=; fh=U8Z3MZ0LxXFhJhC141VX/+e3QhV+x9E+LUG1Dg6EfT4=; b=tL1UacvfgpBFcuBRZUfiTMNKafz8SmktaP/boc8w3hh47U8HppGyiDyB3QMN+K4uIm eBkD+9+wPUso8QIoaqNtHUykcZLgfv4XwKYk9a/joHrXYvzTBBD6YnVq8VoDVklXEBKd qoHFThehA8XWkzdnAbK6wOW0l0AdIM87CYuLyGhOQzkwd7y0Oub8Urm+AL5XATEmunsq 3Pao4j98NUgrTs17SuHatY3uFnx60JkAWySfgJU8e8usfVQrSQFWk3NWwcREvhAomM6B mLs71vtbY/g2h+BEY1KDE0U1Or2osdlyVEl8TZJW04eg2+YtPOPHz0S8691EtG7O+2ho DHrQ== 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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id o17-20020a637e51000000b005652feb0a05si9797840pgn.763.2023.09.05.12.01.40; Tue, 05 Sep 2023 12:02:08 -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; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=arm.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1352292AbjIEQ0l (ORCPT + 99 others); Tue, 5 Sep 2023 12:26:41 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:42960 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1353993AbjIEJDc (ORCPT ); Tue, 5 Sep 2023 05:03:32 -0400 Received: from foss.arm.com (foss.arm.com [217.140.110.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id A7742CE; Tue, 5 Sep 2023 02:03:27 -0700 (PDT) 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 573A011FB; Tue, 5 Sep 2023 02:04:05 -0700 (PDT) Received: from [10.57.5.181] (unknown [10.57.5.181]) by usa-sjc-imap-foss1.foss.arm.com (Postfix) with ESMTPSA id 578893F7F4; Tue, 5 Sep 2023 02:03:25 -0700 (PDT) Message-ID: Date: Tue, 5 Sep 2023 10:03:20 +0100 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Windows NT 10.0; rv:102.0) Gecko/20100101 Thunderbird/102.15.0 Subject: Re: [PATCH 2/3] dt-bindings: pinctrl: rockchip: Add io domain properties Content-Language: en-GB To: Sascha Hauer , linux-rockchip@lists.infradead.org Cc: Heiko Stuebner , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, linux-gpio@vger.kernel.org, kernel@pengutronix.de, Quentin Schulz , Michael Riesch , Linus Walleij , Rob Herring , Krzysztof Kozlowski , Conor Dooley References: <20230904115816.1237684-1-s.hauer@pengutronix.de> <20230904115816.1237684-3-s.hauer@pengutronix.de> From: Robin Murphy In-Reply-To: <20230904115816.1237684-3-s.hauer@pengutronix.de> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-5.7 required=5.0 tests=BAYES_00,NICE_REPLY_A, RCVD_IN_DNSWL_MED,SPF_HELO_NONE,SPF_NONE 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 2023-09-04 12:58, Sascha Hauer wrote: > Add rockchip,io-domains property to the Rockchip pinctrl driver. This > list of phandles points to the IO domain device(s) the pins of the > pinctrl driver are supplied from. > > Also a rockchip,io-domain-boot-on property is added to pin groups > which can be used for pin groups which themselves are needed to access > the regulators an IO domain is driven from. > > Signed-off-by: Sascha Hauer > --- > .../bindings/pinctrl/rockchip,pinctrl.yaml | 13 ++++++++++++- > 1 file changed, 12 insertions(+), 1 deletion(-) > > diff --git a/Documentation/devicetree/bindings/pinctrl/rockchip,pinctrl.yaml b/Documentation/devicetree/bindings/pinctrl/rockchip,pinctrl.yaml > index 10c335efe619e..92075419d29cf 100644 > --- a/Documentation/devicetree/bindings/pinctrl/rockchip,pinctrl.yaml > +++ b/Documentation/devicetree/bindings/pinctrl/rockchip,pinctrl.yaml > @@ -62,6 +62,11 @@ properties: > Required for at least rk3188 and rk3288. On the rk3368 this should > point to the PMUGRF syscon. > > + rockchip,io-domains: > + $ref: /schemas/types.yaml#/definitions/phandle-array > + description: > + Phandles to io domains > + > "#address-cells": > enum: [1, 2] > > @@ -137,7 +142,13 @@ additionalProperties: > - description: > The phandle of a node contains the generic pinconfig options > to use as described in pinctrl-bindings.txt. > - > + rockchip,io-domain-boot-on: I don't think "on" is a particularly descriptive or useful property name for something that has no "off" state. Furthermore it's no help at all if the DT consumer *is* the bootloader that's expected to configure this in the first place. IMO it would seem a lot more sensible to have an integer (or enum) property which describes the actual value for the initial I/O domain setting. Then Linux can choose to assume the presence of the property at all implies that the bootloader should have set it up already, but also has the option of actively enforcing it as well if we want to. > + type: boolean > + description: > + If true assume that the io domain needed for this pin group has been > + configured correctly by the bootloader. This is needed to break cyclic > + dependencies introduced when a io domain needs a regulator that can be > + accessed through pins configured here. This is describing a Linux implementation detail, not the binding itself. There's no technical reason a DT consumer couldn't already figure this much out from the existing topology (by observing that the pinctrl consumer is a grandparent of the I/O domain's supply). Thanks, Robin. > examples: > - | > #include