Received: by 2002:a05:6358:9144:b0:117:f937:c515 with SMTP id r4csp2679121rwr; Fri, 21 Apr 2023 12:16:34 -0700 (PDT) X-Google-Smtp-Source: AKy350YuVCsrk3ommCqfYnT+oH6bAf/2n67LjQpom9i8xlLNLF/WtMxW/aNACEzyCSOr5cjkXNZd X-Received: by 2002:a17:90a:354:b0:23d:1bef:8594 with SMTP id 20-20020a17090a035400b0023d1bef8594mr5639522pjf.1.1682104594192; Fri, 21 Apr 2023 12:16:34 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1682104594; cv=none; d=google.com; s=arc-20160816; b=IxXyCC6SY5fk/4ngJCbboGfEXLaB7NYcO9o2/JIKbvSRFNbuhBhuaPJaBoI5KDYqtM uqZQnK9rBwytigcrnbke7sYNvhhZJ2naDT9Bg86wKBJle7IjgUKo7EybYltHzFpHWH/0 pbGBnLPPzyiSUZXVOibDkmW+x2m/HWkPpKbpROOHKcPUyO7qxuH5HUjRLdt/QBkeGFCL 0jqzs8QtrC64X0MZ8siYCdqGOL06H95KwfF0p8ym5jy0GCcXw68vxfn5Evxz9iyGm36k md7IfSOOdLLEGQTscbPKY3xqMZ7V5Sm41KI9SxEVi6AaW5XWrSRNVTPPGxwvXP02F+eq 6h/w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=K8YLzcgcj81c5ucuZ5taYveoXpihscUHvDViBg3JzuI=; b=0ji7qjg+bxxLtO3XGaEBTx90KoZ5KDFMV/qr2kET53UNNIWTb1QuGEEdzYHFj20dhv n8sab20KuiZ4gsi9S0YuK7DYNh2nCMPB1z7C0NZhbZitT2UeayMDpl35XaHJq7nMNGgM Ud0k501IkyC1Cmqk9y5LVduZFWln1rGEVpIXIKV83gH+ibac7P/T60drLfxkUsseGhMw 2AhtiYkTv7LkOsnaUCE1ZYfEDtXgWl51IXLxF5x4g8fTTzXx44NY34fuTzQu6OPPXX4W iJS6c4usOlmoFLNarBM9b8fKgpfOVWJOf5hnTkz4ByOU4aT64FNOGVDDs70rcmH3gTyV XhtA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mDT21AiA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id z19-20020a63e113000000b00519d69a233csi5232511pgh.626.2023.04.21.12.16.22; Fri, 21 Apr 2023 12:16:34 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@intel.com header.s=Intel header.b=mDT21AiA; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=intel.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232943AbjDUTMc (ORCPT + 99 others); Fri, 21 Apr 2023 15:12:32 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37358 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231639AbjDUTM3 (ORCPT ); Fri, 21 Apr 2023 15:12:29 -0400 Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 81CC910D0; Fri, 21 Apr 2023 12:12:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1682104346; x=1713640346; h=date:from:to:cc:subject:message-id:references: mime-version:in-reply-to; bh=P2lO8gIeNdl0e7LZtKdGG27+IN9spZdvrnbwnwJKFHA=; b=mDT21AiAVLWpqxlg4shDzrVB/wzX04klt7s6llWDlRNbx+WztKddH+k8 NdeEbOYbhlSzTaJ0qhf8xzVwUDmx0uq/GHPK9u7/cZ1VKNbTP4jieQobz SUUF4PieZvc24dYSgH/voATmCb+GYbnx9gEQ5TxX3mkMlCjv9iyaOLAaE lWm9Wlu4BBjtMTwheGuI2bJPUuR9Xz9suKt+9RAusVMnbUeHZyo8/zHtL bURt/oUKyE6NOss38nOAEBPBpeuKG84j0BMeks0DrNNtb+7Xl/qGisc+4 0xJDU7NdXqzPJP5zrI1MC7ryZurA6xzTB/Y0QiUkWvq2GpDAFpkXaU8X5 A==; X-IronPort-AV: E=McAfee;i="6600,9927,10687"; a="346081468" X-IronPort-AV: E=Sophos;i="5.99,216,1677571200"; d="scan'208";a="346081468" Received: from orsmga008.jf.intel.com ([10.7.209.65]) by fmsmga103.fm.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 21 Apr 2023 12:12:26 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=McAfee;i="6600,9927,10687"; a="722845742" X-IronPort-AV: E=Sophos;i="5.99,216,1677571200"; d="scan'208";a="722845742" Received: from lkp-server01.sh.intel.com (HELO b613635ddfff) ([10.239.97.150]) by orsmga008.jf.intel.com with ESMTP; 21 Apr 2023 12:12:20 -0700 Received: from kbuild by b613635ddfff with local (Exim 4.96) (envelope-from ) id 1ppwBA-000gkO-0r; Fri, 21 Apr 2023 19:12:20 +0000 Date: Sat, 22 Apr 2023 03:12:05 +0800 From: kernel test robot To: Kuogee Hsieh , dri-devel@lists.freedesktop.org, robdclark@gmail.com, sean@poorly.run, swboyd@chromium.org, dianders@chromium.org, vkoul@kernel.org, daniel@ffwll.ch, airlied@gmail.com, agross@kernel.org, dmitry.baryshkov@linaro.org, andersson@kernel.org Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev, quic_sbillaka@quicinc.com, linux-arm-msm@vger.kernel.org, quic_abhinavk@quicinc.com, Kuogee Hsieh , marijn.suijten@somainline.org, freedreno@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH v1 1/5] drm/msm/dpu: add support for DSC encoder v1.2 engine Message-ID: <202304220258.dmrglaf1-lkp@intel.com> References: <1682033114-28483-2-git-send-email-quic_khsieh@quicinc.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1682033114-28483-2-git-send-email-quic_khsieh@quicinc.com> X-Spam-Status: No, score=-4.4 required=5.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,RCVD_IN_DNSWL_MED, SPF_HELO_NONE,SPF_NONE,T_SCC_BODY_TEXT_LINE,URIBL_BLOCKED autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Kuogee, kernel test robot noticed the following build errors: [auto build test ERROR on drm-misc/drm-misc-next] [also build test ERROR on drm/drm-next drm-exynos/exynos-drm-next drm-intel/for-linux-next drm-intel/for-linux-next-fixes drm-tip/drm-tip linus/master v6.3-rc7 next-20230420] [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#_base_tree_information] url: https://github.com/intel-lab-lkp/linux/commits/Kuogee-Hsieh/drm-msm-dpu-add-support-for-DSC-encoder-v1-2-engine/20230421-072925 base: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next patch link: https://lore.kernel.org/r/1682033114-28483-2-git-send-email-quic_khsieh%40quicinc.com patch subject: [PATCH v1 1/5] drm/msm/dpu: add support for DSC encoder v1.2 engine config: riscv-randconfig-r013-20230421 (https://download.01.org/0day-ci/archive/20230422/202304220258.dmrglaf1-lkp@intel.com/config) compiler: clang version 17.0.0 (https://github.com/llvm/llvm-project 437b7602e4a998220871de78afcb020b9c14a661) reproduce (this is a W=1 build): wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # install riscv cross compiling tool for clang build # apt-get install binutils-riscv64-linux-gnu # https://github.com/intel-lab-lkp/linux/commit/1c3eede9e4f8fc63f52eddb0c55f63d59fad4b68 git remote add linux-review https://github.com/intel-lab-lkp/linux git fetch --no-tags linux-review Kuogee-Hsieh/drm-msm-dpu-add-support-for-DSC-encoder-v1-2-engine/20230421-072925 git checkout 1c3eede9e4f8fc63f52eddb0c55f63d59fad4b68 # save the config file mkdir build_dir && cp config build_dir/.config COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv olddefconfig COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=riscv SHELL=/bin/bash drivers/gpu/drm/msm/ If you fix the issue, kindly add following tag where applicable | Reported-by: kernel test robot | Link: https://lore.kernel.org/oe-kbuild-all/202304220258.dmrglaf1-lkp@intel.com/ All error/warnings (new ones prefixed by >>): >> drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc_1_2.c:227:24: error: call to undeclared function 'drm_dsc_calculate_flatness_det_thresh'; ISO C99 and later do not support implicit function declarations [-Wimplicit-function-declaration] det_thresh_flatness = drm_dsc_calculate_flatness_det_thresh(dsc); ^ >> drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc_1_2.c:124:16: warning: variable 'off' set but not used [-Wunused-but-set-variable] void __iomem *off; ^ 1 warning and 1 error generated. vim +/drm_dsc_calculate_flatness_det_thresh +227 drivers/gpu/drm/msm/disp/dpu1/dpu_hw_dsc_1_2.c 112 113 static void dpu_hw_dsc_config_1_2(struct dpu_hw_dsc *hw_dsc, 114 struct drm_dsc_config *dsc, 115 u32 mode, 116 u32 initial_lines) 117 { 118 struct dpu_hw_blk_reg_map *hw; 119 u32 offset; 120 u32 data = 0; 121 u32 det_thresh_flatness; 122 u32 num_active_ss_per_enc; 123 u32 bpp; > 124 void __iomem *off; 125 126 if (!hw_dsc || !dsc) 127 return; 128 129 hw = &hw_dsc->hw; 130 131 _dsc_subblk_offset(hw_dsc, DPU_DSC_ENC, &offset); 132 133 if (mode & DSC_MODE_SPLIT_PANEL) 134 data |= BIT(0); 135 136 if (mode & DSC_MODE_MULTIPLEX) 137 data |= BIT(1); 138 139 num_active_ss_per_enc = dsc->slice_count; 140 if (mode & DSC_MODE_MULTIPLEX) 141 num_active_ss_per_enc = dsc->slice_count >> 1; 142 143 data |= (num_active_ss_per_enc & 0x3) << 7; 144 145 DPU_REG_WRITE(hw, DSC_CMN_MAIN_CNF, data); 146 147 data = (initial_lines & 0xff); 148 149 if (mode & DSC_MODE_VIDEO) 150 data |= BIT(9); 151 152 data |= (_dsc_calc_ob_max_addr(hw_dsc, num_active_ss_per_enc) << 18); 153 154 DPU_REG_WRITE(hw, offset + ENC_DF_CTRL, data); 155 156 data = (dsc->dsc_version_minor & 0xf) << 28; 157 if (dsc->dsc_version_minor == 0x2) { 158 if (dsc->native_422) 159 data |= BIT(22); 160 if (dsc->native_420) 161 data |= BIT(21); 162 } 163 164 bpp = dsc->bits_per_pixel; 165 /* as per hw requirement bpp should be programmed 166 * twice the actual value in case of 420 or 422 encoding 167 */ 168 if (dsc->native_422 || dsc->native_420) 169 bpp = 2 * bpp; 170 data |= (dsc->block_pred_enable ? 1 : 0) << 20; 171 data |= bpp << 10; 172 data |= (dsc->line_buf_depth & 0xf) << 6; 173 data |= dsc->convert_rgb << 4; 174 data |= dsc->bits_per_component & 0xf; 175 176 DPU_REG_WRITE(hw, offset + DSC_MAIN_CONF, data); 177 178 data = (dsc->pic_width & 0xffff) | 179 ((dsc->pic_height & 0xffff) << 16); 180 181 DPU_REG_WRITE(hw, offset + DSC_PICTURE_SIZE, data); 182 183 data = (dsc->slice_width & 0xffff) | 184 ((dsc->slice_height & 0xffff) << 16); 185 186 DPU_REG_WRITE(hw, offset + DSC_SLICE_SIZE, data); 187 188 DPU_REG_WRITE(hw, offset + DSC_MISC_SIZE, 189 (dsc->slice_chunk_size) & 0xffff); 190 191 data = (dsc->initial_xmit_delay & 0xffff) | 192 ((dsc->initial_dec_delay & 0xffff) << 16); 193 194 DPU_REG_WRITE(hw, offset + DSC_HRD_DELAYS, data); 195 196 DPU_REG_WRITE(hw, offset + DSC_RC_SCALE, 197 dsc->initial_scale_value & 0x3f); 198 199 data = (dsc->scale_increment_interval & 0xffff) | 200 ((dsc->scale_decrement_interval & 0x7ff) << 16); 201 202 DPU_REG_WRITE(hw, offset + DSC_RC_SCALE_INC_DEC, data); 203 204 data = (dsc->first_line_bpg_offset & 0x1f) | 205 ((dsc->second_line_bpg_offset & 0x1f) << 5); 206 207 DPU_REG_WRITE(hw, offset + DSC_RC_OFFSETS_1, data); 208 209 data = (dsc->nfl_bpg_offset & 0xffff) | 210 ((dsc->slice_bpg_offset & 0xffff) << 16); 211 212 DPU_REG_WRITE(hw, offset + DSC_RC_OFFSETS_2, data); 213 214 data = (dsc->initial_offset & 0xffff) | 215 ((dsc->final_offset & 0xffff) << 16); 216 217 DPU_REG_WRITE(hw, offset + DSC_RC_OFFSETS_3, data); 218 219 data = (dsc->nsl_bpg_offset & 0xffff) | 220 ((dsc->second_line_offset_adj & 0xffff) << 16); 221 222 DPU_REG_WRITE(hw, offset + DSC_RC_OFFSETS_4, data); 223 224 data = (dsc->flatness_min_qp & 0x1f); 225 data |= (dsc->flatness_max_qp & 0x1f) << 5; 226 > 227 det_thresh_flatness = drm_dsc_calculate_flatness_det_thresh(dsc); 228 data |= (det_thresh_flatness & 0xff) << 10; 229 230 DPU_REG_WRITE(hw, offset + DSC_FLATNESS_QP, data); 231 232 DPU_REG_WRITE(hw, offset + DSC_RC_MODEL_SIZE, 233 (dsc->rc_model_size) & 0xffff); 234 235 data = dsc->rc_edge_factor & 0xf; 236 data |= (dsc->rc_quant_incr_limit0 & 0x1f) << 8; 237 data |= (dsc->rc_quant_incr_limit1 & 0x1f) << 13; 238 data |= (dsc->rc_tgt_offset_high & 0xf) << 20; 239 data |= (dsc->rc_tgt_offset_low & 0xf) << 24; 240 241 DPU_REG_WRITE(hw, offset + DSC_RC_CONFIG, data); 242 243 /* program the dsc wrapper */ 244 _dsc_subblk_offset(hw_dsc, DPU_DSC_CTL, &offset); 245 246 off = hw->blk_addr + offset; 247 248 data = BIT(0); /* encoder enable */ 249 if (dsc->native_422) 250 data |= BIT(8); 251 else if (dsc->native_420) 252 data |= BIT(9); 253 if (!dsc->convert_rgb) 254 data |= BIT(10); 255 if (dsc->bits_per_component == 8) 256 data |= BIT(11); 257 if (mode & DSC_MODE_SPLIT_PANEL) 258 data |= BIT(12); 259 if (mode & DSC_MODE_MULTIPLEX) 260 data |= BIT(13); 261 if (!(mode & DSC_MODE_VIDEO)) 262 data |= BIT(17); 263 264 DPU_REG_WRITE(hw, offset + DSC_CFG, data); 265 } 266 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests