From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: multipart/mixed; boundary="===============1895560401839081135==" MIME-Version: 1.0 From: kernel test robot To: kbuild-all@lists.01.org Subject: Re: [PATCH 5/7] drm/msm/dpu: encoder: drop unused callbacks Date: Thu, 03 Feb 2022 22:06:23 +0800 Message-ID: <202202031835.R3GWD0oa-lkp@intel.com> In-Reply-To: <20220203082611.2654810-6-dmitry.baryshkov@linaro.org> List-Id: --===============1895560401839081135== Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Hi Dmitry, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on drm/drm-next] [also build test WARNING on v5.17-rc2 next-20220203] [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/Dmitry-Baryshkov/drm-msm-d= pu-cleanup-dpu-encoder-code/20220203-162806 base: git://anongit.freedesktop.org/drm/drm drm-next config: arc-randconfig-r043-20220130 (https://download.01.org/0day-ci/archi= ve/20220203/202202031835.R3GWD0oa-lkp(a)intel.com/config) compiler: arc-elf-gcc (GCC) 11.2.0 reproduce (this is a W=3D1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/= make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # https://github.com/0day-ci/linux/commit/4661d4d24ba160d3be73c1760= f78cddcdc113004 git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Dmitry-Baryshkov/drm-msm-dpu-clean= up-dpu-encoder-code/20220203-162806 git checkout 4661d4d24ba160d3be73c1760f78cddcdc113004 # save the config file to linux build tree mkdir build_dir COMPILER_INSTALL_PATH=3D$HOME/0day COMPILER=3Dgcc-11.2.0 make.cross= O=3Dbuild_dir ARCH=3Darc SHELL=3D/bin/bash drivers/gpu/drm/msm/ If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function 'dpu_encoder_vi= rt_atomic_check': >> drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:572:40: warning: variable 'm= ode' set but not used [-Wunused-but-set-variable] 572 | const struct drm_display_mode *mode; | ^~~~ drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function 'dpu_encoder_vi= rt_enable': drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:1119:33: warning: variable '= priv' set but not used [-Wunused-but-set-variable] 1119 | struct msm_drm_private *priv; | ^~~~ drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function 'dpu_encoder_vi= rt_disable': drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:1156:33: warning: variable '= priv' set but not used [-Wunused-but-set-variable] 1156 | struct msm_drm_private *priv; | ^~~~ vim +/mode +572 drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 521 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 522 static struct msm_display= _topology dpu_encoder_get_topology( 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 523 struct dpu_encoder_vir= t *dpu_enc, 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 524 struct dpu_kms *dpu_km= s, 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 525 struct drm_display_mod= e *mode) 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 526 { 5fddd4f5db8730 Kalyan Thota 2020-06-11 527 struct msm_display_topol= ogy topology =3D {0}; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 528 int i, intf_count =3D 0; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 529 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 530 for (i =3D 0; i < MAX_PH= YS_ENCODERS_PER_VIRTUAL; i++) 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 531 if (dpu_enc->phys_encs[= i]) 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 532 intf_count++; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 533 = 42a558b71c9ead Kalyan Thota 2019-11-25 534 /* Datapath topology sel= ection 42a558b71c9ead Kalyan Thota 2019-11-25 535 * 42a558b71c9ead Kalyan Thota 2019-11-25 536 * Dual display 42a558b71c9ead Kalyan Thota 2019-11-25 537 * 2 LM, 2 INTF ( Split = display using 2 interfaces) 42a558b71c9ead Kalyan Thota 2019-11-25 538 * 42a558b71c9ead Kalyan Thota 2019-11-25 539 * Single display 42a558b71c9ead Kalyan Thota 2019-11-25 540 * 1 LM, 1 INTF 42a558b71c9ead Kalyan Thota 2019-11-25 541 * 2 LM, 1 INTF (stream = merge to support high resolution interfaces) 42a558b71c9ead Kalyan Thota 2019-11-25 542 * 5fddd4f5db8730 Kalyan Thota 2020-06-11 543 * Adding color blocks o= nly to primary interface if available in 5fddd4f5db8730 Kalyan Thota 2020-06-11 544 * sufficient number 42a558b71c9ead Kalyan Thota 2019-11-25 545 */ 42a558b71c9ead Kalyan Thota 2019-11-25 546 if (intf_count =3D=3D 2) 42a558b71c9ead Kalyan Thota 2019-11-25 547 topology.num_lm =3D 2; 42a558b71c9ead Kalyan Thota 2019-11-25 548 else if (!dpu_kms->catal= og->caps->has_3d_merge) 42a558b71c9ead Kalyan Thota 2019-11-25 549 topology.num_lm =3D 1; 42a558b71c9ead Kalyan Thota 2019-11-25 550 else 42a558b71c9ead Kalyan Thota 2019-11-25 551 topology.num_lm =3D (mo= de->hdisplay > MAX_HDISPLAY_SPLIT) ? 2 : 1; 42a558b71c9ead Kalyan Thota 2019-11-25 552 = f6393abee4827d Dmitry Baryshkov 2022-02-03 553 if (dpu_enc->disp_info.i= ntf_type =3D=3D INTF_DSI) { 5fddd4f5db8730 Kalyan Thota 2020-06-11 554 if (dpu_kms->catalog->d= spp && 5fddd4f5db8730 Kalyan Thota 2020-06-11 555 (dpu_kms->catalog->dsp= p_count >=3D topology.num_lm)) e47616df008b10 Kalyan Thota 2020-03-24 556 topology.num_dspp =3D = topology.num_lm; 5fddd4f5db8730 Kalyan Thota 2020-06-11 557 } e47616df008b10 Kalyan Thota 2020-03-24 558 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 559 topology.num_enc =3D 0; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 560 topology.num_intf =3D in= tf_count; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 561 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 562 return topology; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 563 } 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 564 static int dpu_encoder_vi= rt_atomic_check( 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 565 struct drm_encoder *drm= _enc, 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 566 struct drm_crtc_state *= crtc_state, 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 567 struct drm_connector_st= ate *conn_state) 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 568 { 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 569 struct dpu_encoder_virt = *dpu_enc; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 570 struct msm_drm_private *= priv; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 571 struct dpu_kms *dpu_kms; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 @572 const struct drm_display= _mode *mode; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 573 struct drm_display_mode = *adj_mode; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 574 struct msm_display_topol= ogy topology; de3916c70a24e3 Drew Davenport 2020-02-19 575 struct dpu_global_state = *global_state; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 576 int ret =3D 0; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 577 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 578 if (!drm_enc || !crtc_st= ate || !conn_state) { 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 579 DPU_ERROR("invalid arg(= s), drm_enc %d, crtc/conn state %d/%d\n", e6790f7210062e Zheng Bin 2020-01-23 580 drm_enc !=3D NULL, cr= tc_state !=3D NULL, conn_state !=3D NULL); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 581 return -EINVAL; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 582 } 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 583 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 584 dpu_enc =3D to_dpu_encod= er_virt(drm_enc); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 585 DPU_DEBUG_ENC(dpu_enc, "= \n"); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 586 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 587 priv =3D drm_enc->dev->d= ev_private; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 588 dpu_kms =3D to_dpu_kms(p= riv->kms); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 589 mode =3D &crtc_state->mo= de; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 590 adj_mode =3D &crtc_state= ->adjusted_mode; ccc862b957c641 Kalyan Thota 2020-08-10 591 global_state =3D dpu_kms= _get_global_state(crtc_state->state); ccc862b957c641 Kalyan Thota 2020-08-10 592 if (IS_ERR(global_state)) ccc862b957c641 Kalyan Thota 2020-08-10 593 return PTR_ERR(global_s= tate); ccc862b957c641 Kalyan Thota 2020-08-10 594 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 595 trace_dpu_enc_atomic_che= ck(DRMID(drm_enc)); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 596 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 597 topology =3D dpu_encoder= _get_topology(dpu_enc, dpu_kms, adj_mode); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 598 = de3916c70a24e3 Drew Davenport 2020-02-19 599 /* Reserve dynamic resou= rces now. */ 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 600 /* ccc862b957c641 Kalyan Thota 2020-08-10 601 * Release and Allocate = resources on every modeset ccc862b957c641 Kalyan Thota 2020-08-10 602 * Dont allocate when ac= tive is false. 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 603 */ de3916c70a24e3 Drew Davenport 2020-02-19 604 if (drm_atomic_crtc_need= s_modeset(crtc_state)) { ccc862b957c641 Kalyan Thota 2020-08-10 605 dpu_rm_release(global_s= tate, drm_enc); ccc862b957c641 Kalyan Thota 2020-08-10 606 = ccc862b957c641 Kalyan Thota 2020-08-10 607 if (!crtc_state->active= _changed || crtc_state->active) de3916c70a24e3 Drew Davenport 2020-02-19 608 ret =3D dpu_rm_reserve= (&dpu_kms->rm, global_state, de3916c70a24e3 Drew Davenport 2020-02-19 609 drm_enc, crtc_state,= topology); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 610 } 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 611 = 5dce0c0b92d426 Ville Syrj=C3=A4l=C3=A4 2020-04-28 612 trace_dpu_enc_= atomic_check_flags(DRMID(drm_enc), adj_mode->flags); 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 613 = 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 614 return ret; 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 615 } 25fdd5933e4c0f Jeykumar Sankaran 2018-06-27 616 = --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all(a)lists.01.org --===============1895560401839081135==--