devicetree.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jordan Crouse <jcrouse@codeaurora.org>
To: freedreno@lists.freedesktop.org, georgi.djakov@linaro.org
Cc: nm@ti.com, devicetree@vger.kernel.org, linux-pm@vger.kernel.org,
	sboyd@kernel.org, linux-arm-msm@vger.kernel.org,
	dri-devel@lists.freedesktop.org, bjorn.andersson@linaro.org,
	vireshk@kernel.org, linux-arm-kernel@lists.infradead.org
Subject: [PATCH 0/9] Add interconnect support + bindings for A630 GPU
Date: Mon, 27 Aug 2018 09:11:03 -0600	[thread overview]
Message-ID: <20180827151112.25211-1-jcrouse@codeaurora.org> (raw)

This patch series is a first stab at trying to add interconnect support
for the Adreno 630 GPU in the sdm845 SOC. The most interesting thing
for discussion is the OPP binding for specifying bandwidth - once that
is worked out the actual code to implement it is pretty straight forward
thanks to the hard work from Georgi and the PM lists.

The first 5 patches are are just a sync / reminder of the still pending
DT bindings and entries for the GPU itself - the interconnect folks can
refer to them as a reference to see what the GPU nodes will look like
but I suspect they are of more interest for the GPU.

Patch 6 adds a proposed binding to specify the interconnect avg/peak
BW for a given operating point. On devices that can do aggressive
frequency scaling like the GPU we want to be able to set a peak
bandwidth along with the frequency so that we can make sure that
the bus can handle a faster GPU frequency if we scale up but also
to reduce power consumption on the bus when we scale down.

The proposed binding uses the form:

opp-interconnect-bw-<name> = <avg peak>

Where 'name' is the corresponding interconnect-name of the interested
path and 'avg' and 'peak' are the average and peak bandwidth values
in HZ to program for the operating point. The path name is used to
identify path specific settings for devices that may have multiple
active interconnect paths.

The next patch adds a generic OPP API to read the interconnect values
given a operating point and a name.

The 8th patch adds code support for an interconnect path to the for
the a6xx GPU reading the bandwidth for the operating point from the
OPP API.

And the final patch adds the actual interconnect details the
device tree specifying both the interconnect details as well as
the bandwidth requirements for each of the operating points on the
a630 GPU.

Jordan Crouse (9):
  drm/msm/a6xx: rnndb updates for a6xx
  drm/msm/a6xx: Fix PDC register overlap
  drm/msm/a6xx: Rename gmu phandle to qcom,gmu
  dt-bindings: Document qcom,adreno-gmu
  arm64: dts: sdm845: Add gpu and gmu device nodes
  PM / OPP: dt-bindings: Add opp-interconnect-bw
  OPP: Add dev_pm_opp_get_interconnect_bw()
  drm/msm/a6xx: Add support for an interconnect path
  arm64: dts: Add interconnect for the GPU on SDM845

 .../devicetree/bindings/display/msm/gmu.txt   |  54 ++
 .../devicetree/bindings/display/msm/gpu.txt   |  10 +-
 Documentation/devicetree/bindings/opp/opp.txt |  36 +
 arch/arm64/boot/dts/qcom/sdm845.dtsi          | 131 ++++
 drivers/gpu/drm/msm/adreno/a6xx.xml.h         | 642 +++++++++++-------
 drivers/gpu/drm/msm/adreno/a6xx_gmu.c         | 114 ++--
 drivers/gpu/drm/msm/adreno/a6xx_gmu.h         |   6 -
 drivers/gpu/drm/msm/adreno/a6xx_gmu.xml.h     |  26 +-
 drivers/gpu/drm/msm/adreno/a6xx_gpu.c         |   2 +-
 drivers/gpu/drm/msm/adreno/adreno_gpu.c       |   7 +
 drivers/gpu/drm/msm/msm_gpu.h                 |   3 +
 drivers/opp/of.c                              |  36 +
 include/linux/pm_opp.h                        |   7 +
 13 files changed, 775 insertions(+), 299 deletions(-)
 create mode 100644 Documentation/devicetree/bindings/display/msm/gmu.txt

-- 
2.18.0

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

             reply	other threads:[~2018-08-27 15:11 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-08-27 15:11 Jordan Crouse [this message]
     [not found] ` <20180827151112.25211-1-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2018-08-27 15:11   ` [PATCH 1/9] drm/msm/a6xx: rnndb updates for a6xx Jordan Crouse
2018-08-27 15:11   ` [PATCH 3/9] drm/msm/a6xx: Rename gmu phandle to qcom, gmu Jordan Crouse
2018-08-27 15:11   ` [PATCH 5/9] arm64: dts: sdm845: Add gpu and gmu device nodes Jordan Crouse
     [not found]     ` <20180827151112.25211-6-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2018-08-28 10:30       ` Vivek Gautam
2018-10-10  9:46       ` Viresh Kumar
2018-10-10 14:29         ` Jordan Crouse
     [not found]           ` <20181010142905.GB9977-9PYrDHPZ2Orvke4nUoYGnHL1okKdlPRT@public.gmane.org>
2018-10-10 14:31             ` Viresh Kumar
2018-10-10 14:48               ` Jordan Crouse
     [not found]                 ` <20181010144856.GC9977-9PYrDHPZ2Orvke4nUoYGnHL1okKdlPRT@public.gmane.org>
2018-10-10 14:51                   ` Viresh Kumar
2018-10-10 15:10                     ` Jordan Crouse
     [not found]                       ` <20181010151006.GD9977-9PYrDHPZ2Orvke4nUoYGnHL1okKdlPRT@public.gmane.org>
2018-10-11  5:02                         ` Viresh Kumar
2018-10-11 14:54                           ` Jordan Crouse
     [not found]                             ` <20181011145456.GG9977-9PYrDHPZ2Orvke4nUoYGnHL1okKdlPRT@public.gmane.org>
2018-10-15 10:03                               ` Viresh Kumar
2018-10-15 14:34                                 ` Jordan Crouse
     [not found]                                   ` <20181015143444.GA4751-9PYrDHPZ2Orvke4nUoYGnHL1okKdlPRT@public.gmane.org>
2018-10-22 10:38                                     ` Viresh Kumar
2018-10-22 13:20                                       ` [Freedreno] " Niklas Cassel
2018-10-22 14:37                                         ` Jordan Crouse
2018-10-22 14:34                                       ` Jordan Crouse
2018-10-17 18:28       ` Doug Anderson
2018-08-27 15:11   ` [PATCH 6/9] PM / OPP: dt-bindings: Add opp-interconnect-bw Jordan Crouse
2018-09-27  8:23     ` Georgi Djakov
     [not found]       ` <0998a374-6cb0-9218-d2e3-92f8ee9861ed-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2018-10-10  9:59         ` Viresh Kumar
2018-10-10 14:27           ` Jordan Crouse
     [not found]             ` <20181010142723.GA9977-9PYrDHPZ2Orvke4nUoYGnHL1okKdlPRT@public.gmane.org>
2018-10-10 14:29               ` Viresh Kumar
     [not found]     ` <20180827151112.25211-7-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2018-10-15 14:34       ` Rob Herring
2018-10-15 15:12         ` Jordan Crouse
2018-08-27 15:11   ` [PATCH 7/9] OPP: Add dev_pm_opp_get_interconnect_bw() Jordan Crouse
     [not found]     ` <20180827151112.25211-8-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2018-10-05  6:36       ` Sharat Masetty
     [not found]         ` <49858ede-66db-b58f-e586-411896efad4b-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2018-10-05 17:13           ` Jordan Crouse
2018-08-27 15:11   ` [PATCH 8/9] drm/msm/a6xx: Add support for an interconnect path Jordan Crouse
     [not found]     ` <20180827151112.25211-9-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2018-08-28  1:23       ` kbuild test robot
2018-08-27 15:11   ` [PATCH 9/9] arm64: dts: Add interconnect for the GPU on SDM845 Jordan Crouse
     [not found]     ` <20180827151112.25211-10-jcrouse-sgV2jX0FEOL9JmXXK+q4OQ@public.gmane.org>
2018-08-28 18:16       ` Jordan Crouse
2018-08-27 15:11 ` [PATCH 2/9] drm/msm/a6xx: Fix PDC register overlap Jordan Crouse
2018-08-27 15:11 ` [PATCH 4/9] dt-bindings: Document qcom,adreno-gmu Jordan Crouse

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=20180827151112.25211-1-jcrouse@codeaurora.org \
    --to=jcrouse@codeaurora.org \
    --cc=bjorn.andersson@linaro.org \
    --cc=devicetree@vger.kernel.org \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=freedreno@lists.freedesktop.org \
    --cc=georgi.djakov@linaro.org \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-arm-msm@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=nm@ti.com \
    --cc=sboyd@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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).