Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp798781iog; Wed, 15 Jun 2022 12:35:14 -0700 (PDT) X-Google-Smtp-Source: AGRyM1ufcqZ7XeE3GzKoan1qtqq8cSsNtwlFqYGvmNzszDd71v/I9/bxhSQt/xdTE61qRvkkmCNS X-Received: by 2002:a17:90a:c7cf:b0:1e8:2b77:7835 with SMTP id gf15-20020a17090ac7cf00b001e82b777835mr12112469pjb.109.1655321713832; Wed, 15 Jun 2022 12:35:13 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1655321713; cv=none; d=google.com; s=arc-20160816; b=iTYdDnQEIYrQFH5nh6U60Aw3vmcuaic9qS5tII5WvM31vTpf1gLrpTiMkQIeyH8j8N GvyBYWZ7WxfZe1TbfaP7Ry6vH9GjS7AlmGOFQ8YjYqe5snT7rNiNvAT05w2V61PCIRBd BnhxmKiHlZmdJ05RQ0mci+qQCQdQ6gIl8pxTTFjBY6bz08o0Hgz5lxJU4rv3TxpmxnyD lPiqkR3/RJp46uf0EjTmGAXMBAENh4GjMLRS4KEXUOSGlahKHlh6EoOV05w+Mnr8BqtZ ptzODCXU6Fj3etdXfbp22bc/U/NEFijgPiP9LoYbU8nNWo3nz8UMp9wH1LcvaRkqRqJg 2KJQ== 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:dkim-signature; bh=WpP5cddAnzLQriZlTTuX+6gvB2Px39O6hhSX8MW8+gU=; b=WutUoPPOxjCKSwKmL4anFwvbmHaIEIKz+e1gIKwqGNe1xuOD3IlzVvX/LlG6yMBm0+ Ji1N1Iz5Kccc32OEKBR1+0fHV/Cn3Mvhph+8G5C2NPLmY+B3QNlVzpbWBrkP25mUSykI Nv83fRYwKQDit5CULA2Zy0KgWSorhF4B6Go/mSjZmgez/WnWoxszFTYPm8G1eGKFURVy BBNoeMYz/Wh6DKMixnnQXeWI7B8nLknP4MNt6jSAdViOS3uFXu++q3IflvWF/Q4GnvAG ChPtz3yqhq3cb6hDnhWHEMLPbLIkYei9wTvYfTg7pWIqVYVXC4FKpK9vcu49ChKo8XP1 +9Mw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b=YjWBPN8m; 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=NONE dis=NONE) header.from=linaro.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id u31-20020a056a00099f00b0051ceaf8c256si18493421pfg.248.2022.06.15.12.34.59; Wed, 15 Jun 2022 12:35:13 -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=@linaro.org header.s=google header.b=YjWBPN8m; 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=NONE dis=NONE) header.from=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S244148AbiFORhw (ORCPT + 99 others); Wed, 15 Jun 2022 13:37:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:51158 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1348775AbiFORht (ORCPT ); Wed, 15 Jun 2022 13:37:49 -0400 Received: from mail-pf1-x42c.google.com (mail-pf1-x42c.google.com [IPv6:2607:f8b0:4864:20::42c]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id EF6FB35248 for ; Wed, 15 Jun 2022 10:37:47 -0700 (PDT) Received: by mail-pf1-x42c.google.com with SMTP id x4so12046787pfj.10 for ; Wed, 15 Jun 2022 10:37:47 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=message-id:date:mime-version:user-agent:subject:content-language:to :cc:references:from:in-reply-to:content-transfer-encoding; bh=WpP5cddAnzLQriZlTTuX+6gvB2Px39O6hhSX8MW8+gU=; b=YjWBPN8mSJgpHLhvdszIjnqA3e+WeuiYvKwQZbmckwJ3KWcPwx5dLMJcUlB68hyYe/ 4IgyE8adJ8aIUsD+HRBRpKG/uQ52PlesL1JCaKtYjh5Dc1Sk5zcJJz1aRLgM/WKu9hzX Uu/86aXV006x3egv/udG74jrC+aB30v3DWYsaabwhV9Q0Pv8F3RdGU8Ibm9XQ5TkrfHy sNXuQzpd4SSNIg+XL05h3yYlsJxrZSJBycqJW0vvJztjoZFkKR2Bujf6X75/p44FUYsQ 8SlgZRg7nBmPqCWA1ET3W1khR7I23jVa4mULToeqkmUaWzTZ9c5z9QFmEGUJKGcOgri5 WWlQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:message-id:date:mime-version:user-agent:subject :content-language:to:cc:references:from:in-reply-to :content-transfer-encoding; bh=WpP5cddAnzLQriZlTTuX+6gvB2Px39O6hhSX8MW8+gU=; b=0dE0egwur7RHAkRSDTM+RaHy1SwbAj0xf9XMs+D/htx3KpxFEB7UI0SDbKElhR/rOh b3nPjvFyDg6WEaNTydhKFUmZJAsfwmgFguFRULHS3pnXDXfMn03OZ2WSQ1kIPCNQYUvU CNFF24GBHnpuHYrRe5TYrCKkwB+uAaw4qdIa4o6SU5IisBOiV1tGr0d7gHtoC+jderJp AQfhSQA7YRV+WzcUFAQb4qJr6iQygLMTY0LOguX+WEFnvlIgSoH7ebS2h6cHkrPp6IRK Fyaz9j1gKHezxXnAz440FiivykMrAZsw/LhDV+8JWR0zg1sEZyT/SS8pjCZNdLKna9Xk Fccw== X-Gm-Message-State: AJIora+nINsjD849muyrW6kXaE1Y7RddNb/xp9I+e59IEoaFOZUVK2M7 /1tBlPU2OnmICzVLXZrP41ofxA== X-Received: by 2002:a63:6947:0:b0:3fe:22d6:dfae with SMTP id e68-20020a636947000000b003fe22d6dfaemr754310pgc.185.1655314667388; Wed, 15 Jun 2022 10:37:47 -0700 (PDT) Received: from [172.22.33.138] ([192.77.111.2]) by smtp.gmail.com with ESMTPSA id cd25-20020a056a00421900b0050dc76281f0sm10094269pfb.202.2022.06.15.10.37.45 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 15 Jun 2022 10:37:47 -0700 (PDT) Message-ID: Date: Wed, 15 Jun 2022 10:37:45 -0700 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Thunderbird/91.10.0 Subject: Re: [PATCH v1 0/5] power: domain: Add driver for a PM domain provider which controls Content-Language: en-US To: Marcel Ziswiler , "max.oss.09@gmail.com" , "geert@linux-m68k.org" Cc: "linux-imx@nxp.com" , Francesco Dolcini , "robh@kernel.org" , "krzysztof.kozlowski+dt@linaro.org" , "ulf.hansson@linaro.org" , "linux-arm-kernel@lists.infradead.org" , "dmitry.baryshkov@linaro.org" , "biju.das.jz@bp.renesas.com" , "catalin.marinas@arm.com" , "geert+renesas@glider.be" , "bjorn.andersson@linaro.org" , "vkoul@kernel.org" , "shawnguo@kernel.org" , "kernel@pengutronix.de" , "khilman@kernel.org" , "s.hauer@pengutronix.de" , Andrejs Cainikovs , "will@kernel.org" , "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-pm@vger.kernel.org" , "rafael@kernel.org" , "festevam@gmail.com" , Max Krummenacher , "broonie@kernel.org" References: <20220609150851.23084-1-max.oss.09@gmail.com> <20220613191549.GA4092455-robh@kernel.org> <12e3bb72-af2d-653f-b342-c6b4d6a1f292@linaro.org> From: Krzysztof Kozlowski In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-3.3 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=unavailable 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 15/06/2022 10:31, Marcel Ziswiler wrote: > Hi > > On Wed, 2022-06-15 at 10:15 -0700, Krzysztof Kozlowski wrote: >> On 15/06/2022 09:10, Max Krummenacher wrote: >>> Hi >>> >>> On Tue, Jun 14, 2022 at 9:22 AM Geert Uytterhoeven wrote: >>>> >>>> Hi Rob, >>>> >>>> On Mon, Jun 13, 2022 at 9:15 PM Rob Herring wrote: >>>>> On Thu, Jun 09, 2022 at 05:08:46PM +0200, Max Krummenacher wrote: >>>>>> From: Max Krummenacher >>>>>> >>>>>> its power enable by using a regulator. >>>>>> >>>>>> The currently implemented PM domain providers are all specific to >>>>>> a particular system on chip. >>>>> >>>>> Yes, power domains tend to be specific to an SoC... 'power-domains' is >>>>> supposed to be power islands in a chip. Linux 'PM domains' can be >>>>> anything... >>> >>> I don't see why such power islands should be restricted to a SoC. You can >>> build the exact same idea on a PCB or even more modular designs. >> >> In the SoC these power islands are more-or-less defined. These are real >> regions gated by some control knob. >> >> Calling few devices on a board "power domain" does not make it a power >> domain. There is no grouping, there is no control knob. >> >> Aren't you now re-implementing regulator supplies? How is this different >> than existing supplies? > > I believe the biggest difference between power-domains and regulator-supplies lays in the former being driver > agnostic while the later is driver specific. That's one way to look, but the other way (matching the bindings purpose) is to look at hardware. You have physical wire / voltage rail supply - use regulator supply. In the terms of the hardware - what is that power domain? It's a concept, not a physical object. > Meaning with power-domains one can just add such arbitrary > structure to the device tree without any further driver specific changes/handling required. While with > regulator-supplies each and every driver actually needs to have driver specific handling thereof added. Or do I > miss anything? Thanks for clarification but I am not sure if it matches the purpose of bindings and DTS. You can change the implementation as well to have implicit regulators. No need for new bindings for that. > > We are really trying to model something where a single GPIO pin (via a GPIO regulator or whatever) can control > power to a variety of on-board peripherals. And, of course, we envision runtime PM actually making use of it > e.g. when doing suspend/resume. And this GPIO pin controls what? Some power switch which cuts the power of one regulator or many? If many different regulators, how do you handle small differences in ramp up time? Best regards, Krzysztof