Received: by 2002:a05:6a10:5bc5:0:0:0:0 with SMTP id os5csp1429998pxb; Thu, 28 Oct 2021 03:37:05 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwkRxX7Qgm6A8LY3qk00jZI3jek3urCBzenmKNjWCwblb/x+i+5sVjtdfHtzf/r4RIhzb9/ X-Received: by 2002:a17:902:aa82:b0:140:4655:b211 with SMTP id d2-20020a170902aa8200b001404655b211mr3096412plr.38.1635417425140; Thu, 28 Oct 2021 03:37:05 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1635417425; cv=none; d=google.com; s=arc-20160816; b=k5LzmqKGltDar2de8pXJFzCk0aL3qCHF+Y3ZlNvmThBmp59SGEa8YRNnB5iC9H0E13 tnoxmrXEoacO+jLo8eV8e+ZPgVnX92C/AL1KpeIYAFu9ynzHs+OnrlP+x2vGMDYuKZ0i RoDw5h0U4Qjv/U/xcCgFicR8PIbhb5VTaXFKds6aKnigrdfkg4ylDnmM/M5gFUOFMo1V +T6SwxBsuNADKr8s7aXGDXegwmRN71nOE1sCN4hyhbh1Bioas6pJpeSYwTwaAP1eylAM XKZeYPWFz9CBruLcI84e/D62yDZx1I5ojAysETZ4/Qh5NKpc9cgnxD9X0ZGoPYVn7wPZ IGVA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=KeoZAGDMBIfW4HtbIuTMUQfmtCFV3DmCcorhp6614FQ=; b=eWrDreTKYGpLoWIbzYvtsEG60gerB9Mf7jDynb6qZRQydhhZvuRqfD+pIYAmk4vBtS /HEa+y6mpx/2utQaxDfuSkBLAQKJ/T4oiklRLCftjhouxhViX/F4g0bRR9TZJZL7yW0N xa7XxQXOBh9zMlom4EyAemVG+aTN2t2t+4bY8cP2SQx6yMKH5fwjX5f2/HQxZnhl+vBX XFydDIPcoiyccc+4le9Kh6C7/xB8D6WSvJIa7Ua6KHpbv0MG/8EAsQvkSsBTG7hX506c Ncc1riH7ILqca/uhbO+VPSiLHohWGijIxwUQFTB9zhUMky066pR648sR7Xso+Aq1FLPn 1OUw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="fH3Tsu/P"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 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 vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e4si3978583plh.392.2021.10.28.03.36.53; Thu, 28 Oct 2021 03:37:05 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="fH3Tsu/P"; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 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 S230111AbhJ1KiR (ORCPT + 99 others); Thu, 28 Oct 2021 06:38:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33732 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230115AbhJ1KiQ (ORCPT ); Thu, 28 Oct 2021 06:38:16 -0400 Received: from mail-lj1-x22a.google.com (mail-lj1-x22a.google.com [IPv6:2a00:1450:4864:20::22a]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D2F21C0613B9 for ; Thu, 28 Oct 2021 03:35:49 -0700 (PDT) Received: by mail-lj1-x22a.google.com with SMTP id s19so9815775ljj.11 for ; Thu, 28 Oct 2021 03:35:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=KeoZAGDMBIfW4HtbIuTMUQfmtCFV3DmCcorhp6614FQ=; b=fH3Tsu/PpGaoLtxaztT9fAAhsO81SkYA4w06HUdu8zxHRzt97+3rdla0h0VE4VfEhQ uzpz2P+v8kPlE3Uz2zTboRiGnSUiBZqxpZ7Yk+U+QaSRcPjpwibXHHH7fkDM0oV8JHvX G3OKBVxIe10IzLRXOSZ3Y97pWzT8uMTSF8dPnSsydTpvcLq7VOxtekI3ZyjzbX20x2y2 MADRjnQxgvVhPRQydDfXgw/r1zeRF/Flwk92cvexhKO6iqo09uVnY9n5xTo3YxBi/oEc 3p5wOhC9CGlPDdixea3JKevsVO6JHEKpFq+EwpTOWCHYUTlQVo060qQRdAyH+VMJE7oS XZWg== 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; bh=KeoZAGDMBIfW4HtbIuTMUQfmtCFV3DmCcorhp6614FQ=; b=iz2N7Jk+hzeF9TpkiVT+j7njhROud+2e+AilRUpogCm59xflLTXkSypJE73eIgM7ZX xNO4fy2NR8EzqWIM+3bmSy7WzP0TsedGxxX+iKCF7xig4uWOBJM/2qsdS8z86OKoAOjN DB73+Z0jj/FEG3GAYAq2WE8S3adDN27JB0svga0n4qa1Puvg4ynB9k2fyV64mAkQjwwb HVYMz+jJAtKhDVfnRebxiaKkADEyxtlvfvLm+Te6Cec/yDrF7TpI1fKch6+ae3H/Rf6Y k7bXyaGbXDr+aiEspY07N3RwAswbzRGIKyEfKJrGiokHkWtpGOeKS2AbmWFc5cxfTyIZ jzfg== X-Gm-Message-State: AOAM532y91gvpBwV7mVBmSaRrYybeMn1BNlrWtVX+unVbh2adGUCnoss VhJOz+oBofuLUwnlu46sDtRyW0W8sSgXJ7/gGjHpTw== X-Received: by 2002:a05:651c:907:: with SMTP id e7mr3954838ljq.300.1635417348240; Thu, 28 Oct 2021 03:35:48 -0700 (PDT) MIME-Version: 1.0 References: <1635152851-23660-1-git-send-email-quic_c_sanm@quicinc.com> <1635152851-23660-2-git-send-email-quic_c_sanm@quicinc.com> In-Reply-To: From: Ulf Hansson Date: Thu, 28 Oct 2021 12:35:11 +0200 Message-ID: Subject: Re: [PATCH v2 1/3] dt-bindings: usb: qcom,dwc3: Add multi-pd bindings for dwc3 qcom To: Rajendra Nayak Cc: Bjorn Andersson , Stephen Boyd , Viresh Kumar , Sandeep Maheswaram , Rob Herring , Andy Gross , Greg Kroah-Hartman , Felipe Balbi , Doug Anderson , Matthias Kaehlcke , devicetree@vger.kernel.org, linux-arm-msm@vger.kernel.org, linux-usb@vger.kernel.org, linux-kernel@vger.kernel.org, quic_pkondeti@quicinc.com, quic_ppratap@quicinc.com Content-Type: text/plain; charset="UTF-8" Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org [...] > >>> Got it. So in this case we could have the various display components > >>> that are in the mdss gdsc domain set their frequency via OPP and then > >>> have that translate to a level in CX or MMCX. How do we parent the power > >>> domains outside of DT? I'm thinking that we'll need to do that if MMCX > >>> is parented by CX or something like that and the drivers for those two > >>> power domains are different. Is it basic string matching? > >> > >> In one way or another we need to invoke pm_genpd_add_subdomain() to link > >> the two power-domains (actually genpds) together, like what was done in > >> 3652265514f5 ("clk: qcom: gdsc: enable optional power domain support"). > >> > >> In the case of MMCX and CX, my impression of the documentation is that > >> they are independent - but if we need to express that CX is parent of > >> MMCX, they are both provided by rpmhpd which already supports this by > >> just specifying .parent on mmcx to point to cx. > > > > I was trying to follow the discussion, but it turned out to be a bit > > complicated to catch up and answer all things. In any case, let me > > just add a few overall comments, perhaps that can help to move things > > forward. > > > > First, one domain can have two parent domains. Both from DT and from > > genpd point of view, just to make this clear. > > > > Although, it certainly looks questionable to me, to hook up the USB > > device to two separate power domains, one to control power and one to > > control performance. Especially, if it's really the same piece of HW > > that is managing both things. > [].. > > Additionally, if it's correct to model > > the USB GDSC power domain as a child to the CX power domain from HW > > point of view, we should likely do that. > > I think this would still require a few things in genpd, since > CX and USB GDSC are power domains from different providers. > Perhaps a pm_genpd_add_subdomain_by_name()? > I think of_genpd_add_subdomain() should help to address this. No? Kind regards Uffe