From: kernel test robot <lkp@intel.com>
To: Maxime Ripard <maxime@cerno.tech>,
Daniel Vetter <daniel.vetter@intel.com>,
David Airlie <airlied@linux.ie>,
dri-devel@lists.freedesktop.org,
Maarten Lankhorst <maarten.lankhorst@linux.intel.com>,
Thomas Zimmermann <tzimmermann@suse.de>
Cc: Nicolas Saenz Julienne <nsaenz@kernel.org>,
kbuild-all@lists.01.org, Dom Cobley <dom@raspberrypi.com>,
Tim Gover <tim.gover@raspberrypi.com>,
Dave Stevenson <dave.stevenson@raspberrypi.com>
Subject: Re: [PATCH v5 07/10] drm/vc4: Leverage the load tracker on the BCM2711
Date: Tue, 29 Jun 2021 01:01:01 +0800 [thread overview]
Message-ID: <202106290033.D1fXfCMX-lkp@intel.com> (raw)
In-Reply-To: <20210628124257.140453-8-maxime@cerno.tech>
[-- Attachment #1: Type: text/plain, Size: 6532 bytes --]
Hi Maxime,
I love your patch! Perhaps something to improve:
[auto build test WARNING on drm-intel/for-linux-next]
[cannot apply to drm-tip/drm-tip anholt/for-next v5.13 next-20210628]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Maxime-Ripard/drm-vc4-hdmi-Support-the-4k-60Hz-modes/20210628-204514
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-a016-20210628 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/1a67588c095aa22f70656da4b59474fdc8419e58
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Maxime-Ripard/drm-vc4-hdmi-Support-the-4k-60Hz-modes/20210628-204514
git checkout 1a67588c095aa22f70656da4b59474fdc8419e58
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
drivers/gpu/drm/vc4/vc4_plane.c: In function 'vc4_plane_calc_load':
>> drivers/gpu/drm/vc4/vc4_plane.c:532:18: warning: variable 'vc4' set but not used [-Wunused-but-set-variable]
532 | struct vc4_dev *vc4;
| ^~~
vim +/vc4 +532 drivers/gpu/drm/vc4/vc4_plane.c
5c6799942003df Eric Anholt 2015-12-28 524
4686da83154d87 Boris Brezillon 2019-02-20 525 static void vc4_plane_calc_load(struct drm_plane_state *state)
4686da83154d87 Boris Brezillon 2019-02-20 526 {
4686da83154d87 Boris Brezillon 2019-02-20 527 unsigned int hvs_load_shift, vrefresh, i;
4686da83154d87 Boris Brezillon 2019-02-20 528 struct drm_framebuffer *fb = state->fb;
4686da83154d87 Boris Brezillon 2019-02-20 529 struct vc4_plane_state *vc4_state;
4686da83154d87 Boris Brezillon 2019-02-20 530 struct drm_crtc_state *crtc_state;
4686da83154d87 Boris Brezillon 2019-02-20 531 unsigned int vscale_factor;
f437bc1ec731d3 Maxime Ripard 2020-09-03 @532 struct vc4_dev *vc4;
f437bc1ec731d3 Maxime Ripard 2020-09-03 533
f437bc1ec731d3 Maxime Ripard 2020-09-03 534 vc4 = to_vc4_dev(state->plane->dev);
4686da83154d87 Boris Brezillon 2019-02-20 535 vc4_state = to_vc4_plane_state(state);
4686da83154d87 Boris Brezillon 2019-02-20 536 crtc_state = drm_atomic_get_existing_crtc_state(state->state,
4686da83154d87 Boris Brezillon 2019-02-20 537 state->crtc);
4686da83154d87 Boris Brezillon 2019-02-20 538 vrefresh = drm_mode_vrefresh(&crtc_state->adjusted_mode);
4686da83154d87 Boris Brezillon 2019-02-20 539
4686da83154d87 Boris Brezillon 2019-02-20 540 /* The HVS is able to process 2 pixels/cycle when scaling the source,
4686da83154d87 Boris Brezillon 2019-02-20 541 * 4 pixels/cycle otherwise.
4686da83154d87 Boris Brezillon 2019-02-20 542 * Alpha blending step seems to be pipelined and it's always operating
4686da83154d87 Boris Brezillon 2019-02-20 543 * at 4 pixels/cycle, so the limiting aspect here seems to be the
4686da83154d87 Boris Brezillon 2019-02-20 544 * scaler block.
4686da83154d87 Boris Brezillon 2019-02-20 545 * HVS load is expressed in clk-cycles/sec (AKA Hz).
4686da83154d87 Boris Brezillon 2019-02-20 546 */
4686da83154d87 Boris Brezillon 2019-02-20 547 if (vc4_state->x_scaling[0] != VC4_SCALING_NONE ||
4686da83154d87 Boris Brezillon 2019-02-20 548 vc4_state->x_scaling[1] != VC4_SCALING_NONE ||
4686da83154d87 Boris Brezillon 2019-02-20 549 vc4_state->y_scaling[0] != VC4_SCALING_NONE ||
4686da83154d87 Boris Brezillon 2019-02-20 550 vc4_state->y_scaling[1] != VC4_SCALING_NONE)
4686da83154d87 Boris Brezillon 2019-02-20 551 hvs_load_shift = 1;
4686da83154d87 Boris Brezillon 2019-02-20 552 else
4686da83154d87 Boris Brezillon 2019-02-20 553 hvs_load_shift = 2;
4686da83154d87 Boris Brezillon 2019-02-20 554
4686da83154d87 Boris Brezillon 2019-02-20 555 vc4_state->membus_load = 0;
4686da83154d87 Boris Brezillon 2019-02-20 556 vc4_state->hvs_load = 0;
4686da83154d87 Boris Brezillon 2019-02-20 557 for (i = 0; i < fb->format->num_planes; i++) {
4686da83154d87 Boris Brezillon 2019-02-20 558 /* Even if the bandwidth/plane required for a single frame is
4686da83154d87 Boris Brezillon 2019-02-20 559 *
4686da83154d87 Boris Brezillon 2019-02-20 560 * vc4_state->src_w[i] * vc4_state->src_h[i] * cpp * vrefresh
4686da83154d87 Boris Brezillon 2019-02-20 561 *
4686da83154d87 Boris Brezillon 2019-02-20 562 * when downscaling, we have to read more pixels per line in
4686da83154d87 Boris Brezillon 2019-02-20 563 * the time frame reserved for a single line, so the bandwidth
4686da83154d87 Boris Brezillon 2019-02-20 564 * demand can be punctually higher. To account for that, we
4686da83154d87 Boris Brezillon 2019-02-20 565 * calculate the down-scaling factor and multiply the plane
4686da83154d87 Boris Brezillon 2019-02-20 566 * load by this number. We're likely over-estimating the read
4686da83154d87 Boris Brezillon 2019-02-20 567 * demand, but that's better than under-estimating it.
4686da83154d87 Boris Brezillon 2019-02-20 568 */
4686da83154d87 Boris Brezillon 2019-02-20 569 vscale_factor = DIV_ROUND_UP(vc4_state->src_h[i],
4686da83154d87 Boris Brezillon 2019-02-20 570 vc4_state->crtc_h);
4686da83154d87 Boris Brezillon 2019-02-20 571 vc4_state->membus_load += vc4_state->src_w[i] *
4686da83154d87 Boris Brezillon 2019-02-20 572 vc4_state->src_h[i] * vscale_factor *
4686da83154d87 Boris Brezillon 2019-02-20 573 fb->format->cpp[i];
4686da83154d87 Boris Brezillon 2019-02-20 574 vc4_state->hvs_load += vc4_state->crtc_h * vc4_state->crtc_w;
4686da83154d87 Boris Brezillon 2019-02-20 575 }
4686da83154d87 Boris Brezillon 2019-02-20 576
4686da83154d87 Boris Brezillon 2019-02-20 577 vc4_state->hvs_load *= vrefresh;
4686da83154d87 Boris Brezillon 2019-02-20 578 vc4_state->hvs_load >>= hvs_load_shift;
4686da83154d87 Boris Brezillon 2019-02-20 579 vc4_state->membus_load *= vrefresh;
4686da83154d87 Boris Brezillon 2019-02-20 580 }
4686da83154d87 Boris Brezillon 2019-02-20 581
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org
[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 52202 bytes --]
WARNING: multiple messages have this Message-ID (diff)
From: kernel test robot <lkp@intel.com>
To: kbuild-all@lists.01.org
Subject: Re: [PATCH v5 07/10] drm/vc4: Leverage the load tracker on the BCM2711
Date: Tue, 29 Jun 2021 01:01:01 +0800 [thread overview]
Message-ID: <202106290033.D1fXfCMX-lkp@intel.com> (raw)
In-Reply-To: <20210628124257.140453-8-maxime@cerno.tech>
[-- Attachment #1: Type: text/plain, Size: 6631 bytes --]
Hi Maxime,
I love your patch! Perhaps something to improve:
[auto build test WARNING on drm-intel/for-linux-next]
[cannot apply to drm-tip/drm-tip anholt/for-next v5.13 next-20210628]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch]
url: https://github.com/0day-ci/linux/commits/Maxime-Ripard/drm-vc4-hdmi-Support-the-4k-60Hz-modes/20210628-204514
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-a016-20210628 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-22) 9.3.0
reproduce (this is a W=1 build):
# https://github.com/0day-ci/linux/commit/1a67588c095aa22f70656da4b59474fdc8419e58
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Maxime-Ripard/drm-vc4-hdmi-Support-the-4k-60Hz-modes/20210628-204514
git checkout 1a67588c095aa22f70656da4b59474fdc8419e58
# save the attached .config to linux build tree
make W=1 ARCH=x86_64
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>
All warnings (new ones prefixed by >>):
drivers/gpu/drm/vc4/vc4_plane.c: In function 'vc4_plane_calc_load':
>> drivers/gpu/drm/vc4/vc4_plane.c:532:18: warning: variable 'vc4' set but not used [-Wunused-but-set-variable]
532 | struct vc4_dev *vc4;
| ^~~
vim +/vc4 +532 drivers/gpu/drm/vc4/vc4_plane.c
5c6799942003df Eric Anholt 2015-12-28 524
4686da83154d87 Boris Brezillon 2019-02-20 525 static void vc4_plane_calc_load(struct drm_plane_state *state)
4686da83154d87 Boris Brezillon 2019-02-20 526 {
4686da83154d87 Boris Brezillon 2019-02-20 527 unsigned int hvs_load_shift, vrefresh, i;
4686da83154d87 Boris Brezillon 2019-02-20 528 struct drm_framebuffer *fb = state->fb;
4686da83154d87 Boris Brezillon 2019-02-20 529 struct vc4_plane_state *vc4_state;
4686da83154d87 Boris Brezillon 2019-02-20 530 struct drm_crtc_state *crtc_state;
4686da83154d87 Boris Brezillon 2019-02-20 531 unsigned int vscale_factor;
f437bc1ec731d3 Maxime Ripard 2020-09-03 @532 struct vc4_dev *vc4;
f437bc1ec731d3 Maxime Ripard 2020-09-03 533
f437bc1ec731d3 Maxime Ripard 2020-09-03 534 vc4 = to_vc4_dev(state->plane->dev);
4686da83154d87 Boris Brezillon 2019-02-20 535 vc4_state = to_vc4_plane_state(state);
4686da83154d87 Boris Brezillon 2019-02-20 536 crtc_state = drm_atomic_get_existing_crtc_state(state->state,
4686da83154d87 Boris Brezillon 2019-02-20 537 state->crtc);
4686da83154d87 Boris Brezillon 2019-02-20 538 vrefresh = drm_mode_vrefresh(&crtc_state->adjusted_mode);
4686da83154d87 Boris Brezillon 2019-02-20 539
4686da83154d87 Boris Brezillon 2019-02-20 540 /* The HVS is able to process 2 pixels/cycle when scaling the source,
4686da83154d87 Boris Brezillon 2019-02-20 541 * 4 pixels/cycle otherwise.
4686da83154d87 Boris Brezillon 2019-02-20 542 * Alpha blending step seems to be pipelined and it's always operating
4686da83154d87 Boris Brezillon 2019-02-20 543 * at 4 pixels/cycle, so the limiting aspect here seems to be the
4686da83154d87 Boris Brezillon 2019-02-20 544 * scaler block.
4686da83154d87 Boris Brezillon 2019-02-20 545 * HVS load is expressed in clk-cycles/sec (AKA Hz).
4686da83154d87 Boris Brezillon 2019-02-20 546 */
4686da83154d87 Boris Brezillon 2019-02-20 547 if (vc4_state->x_scaling[0] != VC4_SCALING_NONE ||
4686da83154d87 Boris Brezillon 2019-02-20 548 vc4_state->x_scaling[1] != VC4_SCALING_NONE ||
4686da83154d87 Boris Brezillon 2019-02-20 549 vc4_state->y_scaling[0] != VC4_SCALING_NONE ||
4686da83154d87 Boris Brezillon 2019-02-20 550 vc4_state->y_scaling[1] != VC4_SCALING_NONE)
4686da83154d87 Boris Brezillon 2019-02-20 551 hvs_load_shift = 1;
4686da83154d87 Boris Brezillon 2019-02-20 552 else
4686da83154d87 Boris Brezillon 2019-02-20 553 hvs_load_shift = 2;
4686da83154d87 Boris Brezillon 2019-02-20 554
4686da83154d87 Boris Brezillon 2019-02-20 555 vc4_state->membus_load = 0;
4686da83154d87 Boris Brezillon 2019-02-20 556 vc4_state->hvs_load = 0;
4686da83154d87 Boris Brezillon 2019-02-20 557 for (i = 0; i < fb->format->num_planes; i++) {
4686da83154d87 Boris Brezillon 2019-02-20 558 /* Even if the bandwidth/plane required for a single frame is
4686da83154d87 Boris Brezillon 2019-02-20 559 *
4686da83154d87 Boris Brezillon 2019-02-20 560 * vc4_state->src_w[i] * vc4_state->src_h[i] * cpp * vrefresh
4686da83154d87 Boris Brezillon 2019-02-20 561 *
4686da83154d87 Boris Brezillon 2019-02-20 562 * when downscaling, we have to read more pixels per line in
4686da83154d87 Boris Brezillon 2019-02-20 563 * the time frame reserved for a single line, so the bandwidth
4686da83154d87 Boris Brezillon 2019-02-20 564 * demand can be punctually higher. To account for that, we
4686da83154d87 Boris Brezillon 2019-02-20 565 * calculate the down-scaling factor and multiply the plane
4686da83154d87 Boris Brezillon 2019-02-20 566 * load by this number. We're likely over-estimating the read
4686da83154d87 Boris Brezillon 2019-02-20 567 * demand, but that's better than under-estimating it.
4686da83154d87 Boris Brezillon 2019-02-20 568 */
4686da83154d87 Boris Brezillon 2019-02-20 569 vscale_factor = DIV_ROUND_UP(vc4_state->src_h[i],
4686da83154d87 Boris Brezillon 2019-02-20 570 vc4_state->crtc_h);
4686da83154d87 Boris Brezillon 2019-02-20 571 vc4_state->membus_load += vc4_state->src_w[i] *
4686da83154d87 Boris Brezillon 2019-02-20 572 vc4_state->src_h[i] * vscale_factor *
4686da83154d87 Boris Brezillon 2019-02-20 573 fb->format->cpp[i];
4686da83154d87 Boris Brezillon 2019-02-20 574 vc4_state->hvs_load += vc4_state->crtc_h * vc4_state->crtc_w;
4686da83154d87 Boris Brezillon 2019-02-20 575 }
4686da83154d87 Boris Brezillon 2019-02-20 576
4686da83154d87 Boris Brezillon 2019-02-20 577 vc4_state->hvs_load *= vrefresh;
4686da83154d87 Boris Brezillon 2019-02-20 578 vc4_state->hvs_load >>= hvs_load_shift;
4686da83154d87 Boris Brezillon 2019-02-20 579 vc4_state->membus_load *= vrefresh;
4686da83154d87 Boris Brezillon 2019-02-20 580 }
4686da83154d87 Boris Brezillon 2019-02-20 581
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org
[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 52202 bytes --]
next prev parent reply other threads:[~2021-06-28 17:02 UTC|newest]
Thread overview: 26+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-06-28 12:42 [PATCH v5 00/10] drm/vc4: hdmi: Support the 4k @ 60Hz modes Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 01/10] drm/vc4: hdmi: Remove the DDC probing for status detection Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 02/10] drm/vc4: hdmi: Fix HPD GPIO detection Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 03/10] drm/vc4: Make vc4_crtc_get_encoder public Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 04/10] drm/vc4: crtc: Add encoder to vc4_crtc_config_pv prototype Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 05/10] drm/vc4: crtc: Rework the encoder retrieval code (again) Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 06/10] drm/vc4: crtc: Add some logging Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 07/10] drm/vc4: Leverage the load tracker on the BCM2711 Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 17:01 ` kernel test robot [this message]
2021-06-28 17:01 ` kernel test robot
2021-06-28 20:42 ` kernel test robot
2021-06-28 20:42 ` kernel test robot
2021-06-28 12:42 ` [PATCH v5 08/10] drm/vc4: hdmi: Raise the maximum clock rate Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 09/10] drm/vc4: hdmi: Enable the scrambler on reconnection Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
2021-06-28 12:42 ` [PATCH v5 10/10] drm/vc4: Increase the core clock based on HVS load Maxime Ripard
2021-06-28 12:42 ` Maxime Ripard
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=202106290033.D1fXfCMX-lkp@intel.com \
--to=lkp@intel.com \
--cc=airlied@linux.ie \
--cc=daniel.vetter@intel.com \
--cc=dave.stevenson@raspberrypi.com \
--cc=dom@raspberrypi.com \
--cc=dri-devel@lists.freedesktop.org \
--cc=kbuild-all@lists.01.org \
--cc=maarten.lankhorst@linux.intel.com \
--cc=maxime@cerno.tech \
--cc=nsaenz@kernel.org \
--cc=tim.gover@raspberrypi.com \
--cc=tzimmermann@suse.de \
/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.