All of lore.kernel.org
 help / color / mirror / Atom feed
From: Viresh Kumar <viresh.kumar@linaro.org>
To: Manivannan Sadhasivam <mani@kernel.org>
Cc: "Krishna chaitanya chundru" <quic_krichai@quicinc.com>,
	"Bjorn Andersson" <andersson@kernel.org>,
	"Konrad Dybcio" <konrad.dybcio@linaro.org>,
	"Bjorn Helgaas" <bhelgaas@google.com>,
	"Lorenzo Pieralisi" <lpieralisi@kernel.org>,
	"Krzysztof Wilczyński" <kw@linux.com>,
	"Rob Herring" <robh@kernel.org>,
	"Krzysztof Kozlowski" <krzysztof.kozlowski+dt@linaro.org>,
	"Conor Dooley" <conor+dt@kernel.org>,
	"Rob Herring" <robh+dt@kernel.org>,
	"Johan Hovold" <johan+linaro@kernel.org>,
	"Brian Masney" <bmasney@redhat.com>,
	"Georgi Djakov" <djakov@kernel.org>,
	linux-arm-msm@vger.kernel.org, vireshk@kernel.org,
	quic_vbadigan@quicinc.com, quic_skananth@quicinc.com,
	quic_nitegupt@quicinc.com, linux-pci@vger.kernel.org,
	devicetree@vger.kernel.org, linux-kernel@vger.kernel.org
Subject: Re: [PATCH v6 5/6] arm64: dts: qcom: sm8450: Add opp table support to PCIe
Date: Tue, 30 Jan 2024 14:06:19 +0530	[thread overview]
Message-ID: <20240130083619.lqbj47fl7aa5j3k5@vireshk-i7> (raw)
In-Reply-To: <20240130071449.GG32821@thinkpad>

On 30-01-24, 12:44, Manivannan Sadhasivam wrote:
> On Tue, Jan 30, 2024 at 11:41:11AM +0530, Viresh Kumar wrote:
> > I don't have any issues with a new callback for bw. But, AFAIU, the DT
> > is required to represent the hardware irrespective of what any OS
> > would do with it. So DT should ideally have these values here, right ?
> > 
> 
> Not necessarily. Because, right now the bandwidth values of the all peripherals
> are encoded within the drivers. Only OPP has the requirement to define the
> values in DT.

I have a bit different argument here. I am saying that it doesn't
matter if we have OPP framework or something else using these values.
The hardware must be represented properly by the DT, so Linux or any
other firmware/OS can program the device. So DT should have bandwidth
values anyway. And that's the way we have designed things in Linux
now.

> > Also, the driver has already moved away from using those macros now
> > and depend on the OPP core to do the right thing. It only uses the
> > macro for the cases where the DT OPP table isn't available. And as
> > said by few others as well already, the driver really should try to
> > add OPPs dynamically in that case to avoid multiple code paths and
> > stick to a single OPP based solution.
> > 
> 
> Still I prefer to use OPP for bandwidth control because both the voltage and
> bandwidth values need to be updated at the same time. My only point here is, if
> OPP exposes a callback for bw, then we can keep the DT behavior consistent.

Feels like we are going a bit backward on this. The current view, as
per me, is that driver shouldn't need to micromanage all these
configurations and the OPP core should be able to handle them. That's
why we want to handle all configurations from there.

This also means that the DT needs to contain all this information and
drivers shouldn't use special math functions to calculate these
values. Drivers need to move away from them, instead of getting more
of those.

I don't see how a callback would be helpful here, if the driver relies
on DT values only. Or am I confusing things here ??

-- 
viresh

  reply	other threads:[~2024-01-30  8:36 UTC|newest]

Thread overview: 58+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-12 14:21 [PATCH v6 0/6] PCI: qcom: Add support for OPP Krishna chaitanya chundru
2024-01-12 14:22 ` [PATCH v6 1/6] dt-bindings: PCI: qcom: Add interconnects path as required property Krishna chaitanya chundru
2024-01-12 16:55   ` Conor Dooley
2024-01-12 17:12     ` Dmitry Baryshkov
2024-01-12 17:27       ` Conor Dooley
2024-01-19 22:34   ` Rob Herring
2024-01-29 15:22   ` Manivannan Sadhasivam
2024-01-12 14:22 ` [PATCH v6 2/6] arm64: dts: qcom: sm8450: Add interconnect path to PCIe node Krishna chaitanya chundru
2024-01-29 15:24   ` Manivannan Sadhasivam
2024-01-12 14:22 ` [PATCH v6 3/6] PCI: qcom: Add missing icc bandwidth vote for cpu to PCIe path Krishna chaitanya chundru
2024-01-12 15:17   ` Bryan O'Donoghue
2024-01-12 22:33     ` Konrad Dybcio
2024-01-16 10:52       ` Johan Hovold
2024-01-17  9:13         ` Konrad Dybcio
2024-01-16  4:52     ` Krishna Chaitanya Chundru
2024-01-16 10:06       ` Bryan O'Donoghue
2024-01-12 15:30   ` Dmitry Baryshkov
2024-01-16  4:57     ` Krishna Chaitanya Chundru
2024-01-17  6:39       ` Manivannan Sadhasivam
2024-01-29 14:10         ` Krishna Chaitanya Chundru
2024-01-12 15:59   ` Johan Hovold
2024-01-12 22:37     ` Konrad Dybcio
2024-01-16 10:54       ` Johan Hovold
2024-01-16  5:04     ` Krishna Chaitanya Chundru
2024-01-16 10:46       ` Johan Hovold
2024-01-12 16:47   ` Bjorn Helgaas
2024-01-16  5:06     ` Krishna Chaitanya Chundru
2024-01-12 14:22 ` [PATCH v6 4/6] dt-bindings: pci: qcom: Add opp table Krishna chaitanya chundru
2024-01-12 14:22 ` [PATCH v6 5/6] arm64: dts: qcom: sm8450: Add opp table support to PCIe Krishna chaitanya chundru
2024-01-29 16:04   ` Manivannan Sadhasivam
2024-01-30  6:11     ` Viresh Kumar
2024-01-30  7:14       ` Manivannan Sadhasivam
2024-01-30  8:36         ` Viresh Kumar [this message]
2024-01-30  9:48           ` Manivannan Sadhasivam
2024-01-30  9:55             ` Viresh Kumar
2024-01-30 13:16               ` Manivannan Sadhasivam
2024-01-31  5:23                 ` Viresh Kumar
2024-01-31  8:46                   ` Manivannan Sadhasivam
2024-01-31 10:00                     ` Viresh Kumar
2024-02-01 14:45                   ` Konrad Dybcio
2024-02-02  7:33                     ` Viresh Kumar
2024-02-09 21:14                       ` Konrad Dybcio
2024-02-19  7:02                         ` Krishna Chaitanya Chundru
2024-02-19 10:28                         ` Viresh Kumar
2024-02-19 12:38                           ` Manivannan Sadhasivam
2024-01-12 14:22 ` [PATCH v6 6/6] PCI: qcom: Add OPP support to scale performance state of power domain Krishna chaitanya chundru
2024-01-12 15:33   ` Dmitry Baryshkov
2024-01-16  5:17     ` Krishna Chaitanya Chundru
2024-01-16  9:55       ` Dmitry Baryshkov
2024-01-16 11:00         ` Johan Hovold
2024-02-01 11:54         ` Manivannan Sadhasivam
2024-02-01 11:58           ` Dmitry Baryshkov
2024-02-01 12:07             ` Manivannan Sadhasivam
2024-01-12 16:50   ` Bjorn Helgaas
2024-01-16  5:07     ` Krishna Chaitanya Chundru
2024-01-12 22:44   ` Konrad Dybcio
2024-01-16  5:18     ` Krishna Chaitanya Chundru
2024-01-29 16:00   ` Manivannan Sadhasivam

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20240130083619.lqbj47fl7aa5j3k5@vireshk-i7 \
    --to=viresh.kumar@linaro.org \
    --cc=andersson@kernel.org \
    --cc=bhelgaas@google.com \
    --cc=bmasney@redhat.com \
    --cc=conor+dt@kernel.org \
    --cc=devicetree@vger.kernel.org \
    --cc=djakov@kernel.org \
    --cc=johan+linaro@kernel.org \
    --cc=konrad.dybcio@linaro.org \
    --cc=krzysztof.kozlowski+dt@linaro.org \
    --cc=kw@linux.com \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-pci@vger.kernel.org \
    --cc=lpieralisi@kernel.org \
    --cc=mani@kernel.org \
    --cc=quic_krichai@quicinc.com \
    --cc=quic_nitegupt@quicinc.com \
    --cc=quic_skananth@quicinc.com \
    --cc=quic_vbadigan@quicinc.com \
    --cc=robh+dt@kernel.org \
    --cc=robh@kernel.org \
    --cc=vireshk@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.