From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mgamail.intel.com (mgamail.intel.com [198.175.65.19]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 0B6B920F081 for ; Thu, 23 Jan 2025 12:29:19 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=198.175.65.19 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737635361; cv=none; b=gZr88v5M/NVPWP4Y/FtlqfT6WY6ME5dRqbA71MNkRWONQI+ymsMWlk1qH+9az/iMAirJEf0gYDTLSDqQ50NDXPqPH3gqMB17/Y0tswU0nSSKqW5OQwZ3nR/OkvctZIoXiv3F8pPxMSB2wP0S7psuZ5Oq6TBNfOHpcvr3RpzNwSE= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1737635361; c=relaxed/simple; bh=NZts1Cw8iQN/IlBbOmjcU2nN0yDD2rBc44Ak+wtbr0U=; h=Date:From:To:Cc:Subject:Message-ID:MIME-Version:Content-Type: Content-Disposition; b=I5QsUOWI21mnyR0RY36c5GRxJD00W2sWRERtxbF4lsoktDcObgW08s3zIZOM068RMoeHwbUHuU5vFAEJxEYaRnHWiawONlBEBgePAhTQ4UcGeqkfeNZFFLN70aYgRv6OCB0wmiUyrGGsWcWsQzSdPMzrnw7c+h1qq2q18Lz2tn4= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com; spf=pass smtp.mailfrom=intel.com; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b=ArfbnI8L; arc=none smtp.client-ip=198.175.65.19 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=intel.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=intel.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=intel.com header.i=@intel.com header.b="ArfbnI8L" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=intel.com; i=@intel.com; q=dns/txt; s=Intel; t=1737635360; x=1769171360; h=date:from:to:cc:subject:message-id:mime-version: content-transfer-encoding; bh=NZts1Cw8iQN/IlBbOmjcU2nN0yDD2rBc44Ak+wtbr0U=; b=ArfbnI8LwbQxTGMr+mhJSbMSYtvtjuW+ZejQfkgE2XeZ/MPuLGTiD3is hpLzXvSox+okafNyWNK4kdxfDgXvO9hTm4c/lGYDouZI28ZWty7gc0iiG jnxBbRiKry1+q+GVm7mzcWAeSDafBS3ORBtX0CDklqe2arJA/jf9ylDF1 dgcJKKNkShXw59k3cO93AsU6UkLCqzDJrGS8VzP15OZiB27G28natOy8k hQgSQAKYvLYj2dakD8JjywPhPj+1L43KMCuOiNdXP9rAZxHkT0mRIHE4q TgtVrgWLarH7itaV2/Jx1IY5w5Q+TMvv/NYaDOiT5xC6EpLV3rcXFx7m+ g==; X-CSE-ConnectionGUID: J7ZQVSGqTA638craWuM3jg== X-CSE-MsgGUID: 2aa2JlZjQnidjCILWmjmKQ== X-IronPort-AV: E=McAfee;i="6700,10204,11324"; a="38010446" X-IronPort-AV: E=Sophos;i="6.13,228,1732608000"; d="scan'208";a="38010446" Received: from fmviesa004.fm.intel.com ([10.60.135.144]) by orvoesa111.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 23 Jan 2025 04:29:19 -0800 X-CSE-ConnectionGUID: v7zsk9jBQeK/hKFgyORucg== X-CSE-MsgGUID: qI5PWkf9QtKRiIReEHt2Nw== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="6.13,228,1732608000"; d="scan'208";a="112440607" Received: from lkp-server01.sh.intel.com (HELO d63d4d77d921) ([10.239.97.150]) by fmviesa004.fm.intel.com with ESMTP; 23 Jan 2025 04:29:17 -0800 Received: from kbuild by d63d4d77d921 with local (Exim 4.96) (envelope-from ) id 1tawKh-000bA7-27; Thu, 23 Jan 2025 12:29:15 +0000 Date: Thu, 23 Jan 2025 20:28:29 +0800 From: kernel test robot To: Ville =?iso-8859-1?Q?Syrj=E4l=E4?= Cc: oe-kbuild-all@lists.linux.dev, linux-kernel@vger.kernel.org, Laurentiu Palcu Subject: drivers/gpu/drm/imx/dcss/dcss-scaler.c:174: warning: Function parameter or struct member 'phase0_identity' not described in 'dcss_scaler_gaussian_filter' Message-ID: <202501232041.R736koGV-lkp@intel.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=iso-8859-1 Content-Disposition: inline Content-Transfer-Encoding: 8bit Hi Ville, First bad commit (maybe != root cause): tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 21266b8df5224c4f677acf9f353eecc9094731f0 commit: 004555a18d57fbad42553c2e98e00a054bbe618c drm/imx/dcss: Allow build with COMPILE_TEST=y date: 3 months ago config: arc-randconfig-001-20250102 (https://download.01.org/0day-ci/archive/20250123/202501232041.R736koGV-lkp@intel.com/config) compiler: arceb-elf-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250123/202501232041.R736koGV-lkp@intel.com/reproduce) If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot | Closes: https://lore.kernel.org/oe-kbuild-all/202501232041.R736koGV-lkp@intel.com/ All warnings (new ones prefixed by >>): >> drivers/gpu/drm/imx/dcss/dcss-scaler.c:174: warning: Function parameter or struct member 'phase0_identity' not described in 'dcss_scaler_gaussian_filter' >> drivers/gpu/drm/imx/dcss/dcss-scaler.c:271: warning: Function parameter or struct member 'phase0_identity' not described in 'dcss_scaler_filter_design' >> drivers/gpu/drm/imx/dcss/dcss-scaler.c:271: warning: Function parameter or struct member 'nn_interpolation' not described in 'dcss_scaler_filter_design' vim +174 drivers/gpu/drm/imx/dcss/dcss-scaler.c 9021c317b77024 Laurentiu Palcu 2020-07-31 164 9021c317b77024 Laurentiu Palcu 2020-07-31 165 /** 9021c317b77024 Laurentiu Palcu 2020-07-31 166 * dcss_scaler_gaussian_filter() - Generate gaussian prototype filter. 9021c317b77024 Laurentiu Palcu 2020-07-31 167 * @fc_q: fixed-point cutoff frequency normalized to range [0, 1] 9021c317b77024 Laurentiu Palcu 2020-07-31 168 * @use_5_taps: indicates whether to use 5 taps or 7 taps 9021c317b77024 Laurentiu Palcu 2020-07-31 169 * @coef: output filter coefficients 9021c317b77024 Laurentiu Palcu 2020-07-31 170 */ 9021c317b77024 Laurentiu Palcu 2020-07-31 171 static void dcss_scaler_gaussian_filter(int fc_q, bool use_5_taps, 9021c317b77024 Laurentiu Palcu 2020-07-31 172 bool phase0_identity, 9021c317b77024 Laurentiu Palcu 2020-07-31 173 int coef[][PSC_NUM_TAPS]) 9021c317b77024 Laurentiu Palcu 2020-07-31 @174 { 9021c317b77024 Laurentiu Palcu 2020-07-31 175 int sigma_q, g0_q, g1_q, g2_q; 9021c317b77024 Laurentiu Palcu 2020-07-31 176 int tap_cnt1, tap_cnt2, tap_idx, phase_cnt; 9021c317b77024 Laurentiu Palcu 2020-07-31 177 int mid; 9021c317b77024 Laurentiu Palcu 2020-07-31 178 int phase; 9021c317b77024 Laurentiu Palcu 2020-07-31 179 int i; 9021c317b77024 Laurentiu Palcu 2020-07-31 180 int taps; 9021c317b77024 Laurentiu Palcu 2020-07-31 181 9021c317b77024 Laurentiu Palcu 2020-07-31 182 if (use_5_taps) 9021c317b77024 Laurentiu Palcu 2020-07-31 183 for (phase = 0; phase < PSC_STORED_PHASES; phase++) { 9021c317b77024 Laurentiu Palcu 2020-07-31 184 coef[phase][0] = 0; 9021c317b77024 Laurentiu Palcu 2020-07-31 185 coef[phase][PSC_NUM_TAPS - 1] = 0; 9021c317b77024 Laurentiu Palcu 2020-07-31 186 } 9021c317b77024 Laurentiu Palcu 2020-07-31 187 9021c317b77024 Laurentiu Palcu 2020-07-31 188 /* seed coefficient scanner */ 9021c317b77024 Laurentiu Palcu 2020-07-31 189 taps = use_5_taps ? PSC_NUM_TAPS_RGBA : PSC_NUM_TAPS; 9021c317b77024 Laurentiu Palcu 2020-07-31 190 mid = (PSC_NUM_PHASES * taps) / 2 - 1; 9021c317b77024 Laurentiu Palcu 2020-07-31 191 phase_cnt = (PSC_NUM_PHASES * (PSC_NUM_TAPS + 1)) / 2; 9021c317b77024 Laurentiu Palcu 2020-07-31 192 tap_cnt1 = (PSC_NUM_PHASES * PSC_NUM_TAPS) / 2; 9021c317b77024 Laurentiu Palcu 2020-07-31 193 tap_cnt2 = (PSC_NUM_PHASES * PSC_NUM_TAPS) / 2; 9021c317b77024 Laurentiu Palcu 2020-07-31 194 9021c317b77024 Laurentiu Palcu 2020-07-31 195 /* seed gaussian filter generator */ 9021c317b77024 Laurentiu Palcu 2020-07-31 196 sigma_q = div_q(PSC_Q_ROUND_OFFSET, fc_q); 9021c317b77024 Laurentiu Palcu 2020-07-31 197 g0_q = 1 << PSC_Q_FRACTION; 9021c317b77024 Laurentiu Palcu 2020-07-31 198 g1_q = exp_approx_q(div_q(-PSC_Q_ROUND_OFFSET, 9021c317b77024 Laurentiu Palcu 2020-07-31 199 mult_q(sigma_q, sigma_q))); 9021c317b77024 Laurentiu Palcu 2020-07-31 200 g2_q = mult_q(g1_q, g1_q); 9021c317b77024 Laurentiu Palcu 2020-07-31 201 coef[phase_cnt & PSC_PHASE_MASK][tap_cnt1 >> PSC_BITS_FOR_PHASE] = g0_q; 9021c317b77024 Laurentiu Palcu 2020-07-31 202 9021c317b77024 Laurentiu Palcu 2020-07-31 203 for (i = 0; i < mid; i++) { 9021c317b77024 Laurentiu Palcu 2020-07-31 204 phase_cnt++; 9021c317b77024 Laurentiu Palcu 2020-07-31 205 tap_cnt1--; 9021c317b77024 Laurentiu Palcu 2020-07-31 206 tap_cnt2++; 9021c317b77024 Laurentiu Palcu 2020-07-31 207 9021c317b77024 Laurentiu Palcu 2020-07-31 208 g0_q = mult_q(g0_q, g1_q); 9021c317b77024 Laurentiu Palcu 2020-07-31 209 g1_q = mult_q(g1_q, g2_q); 9021c317b77024 Laurentiu Palcu 2020-07-31 210 9021c317b77024 Laurentiu Palcu 2020-07-31 211 if ((phase_cnt & PSC_PHASE_MASK) <= 8) { 9021c317b77024 Laurentiu Palcu 2020-07-31 212 tap_idx = tap_cnt1 >> PSC_BITS_FOR_PHASE; 9021c317b77024 Laurentiu Palcu 2020-07-31 213 coef[phase_cnt & PSC_PHASE_MASK][tap_idx] = g0_q; 9021c317b77024 Laurentiu Palcu 2020-07-31 214 } 9021c317b77024 Laurentiu Palcu 2020-07-31 215 if (((-phase_cnt) & PSC_PHASE_MASK) <= 8) { 9021c317b77024 Laurentiu Palcu 2020-07-31 216 tap_idx = tap_cnt2 >> PSC_BITS_FOR_PHASE; 9021c317b77024 Laurentiu Palcu 2020-07-31 217 coef[(-phase_cnt) & PSC_PHASE_MASK][tap_idx] = g0_q; 9021c317b77024 Laurentiu Palcu 2020-07-31 218 } 9021c317b77024 Laurentiu Palcu 2020-07-31 219 } 9021c317b77024 Laurentiu Palcu 2020-07-31 220 9021c317b77024 Laurentiu Palcu 2020-07-31 221 phase_cnt++; 9021c317b77024 Laurentiu Palcu 2020-07-31 222 tap_cnt1--; 9021c317b77024 Laurentiu Palcu 2020-07-31 223 coef[phase_cnt & PSC_PHASE_MASK][tap_cnt1 >> PSC_BITS_FOR_PHASE] = 0; 9021c317b77024 Laurentiu Palcu 2020-07-31 224 9021c317b77024 Laurentiu Palcu 2020-07-31 225 /* override phase 0 with identity filter if specified */ 9021c317b77024 Laurentiu Palcu 2020-07-31 226 if (phase0_identity) 9021c317b77024 Laurentiu Palcu 2020-07-31 227 for (i = 0; i < PSC_NUM_TAPS; i++) 9021c317b77024 Laurentiu Palcu 2020-07-31 228 coef[0][i] = i == (PSC_NUM_TAPS >> 1) ? 9021c317b77024 Laurentiu Palcu 2020-07-31 229 (1 << PSC_COEFF_PRECISION) : 0; 9021c317b77024 Laurentiu Palcu 2020-07-31 230 9021c317b77024 Laurentiu Palcu 2020-07-31 231 /* normalize coef */ 9021c317b77024 Laurentiu Palcu 2020-07-31 232 for (phase = 0; phase < PSC_STORED_PHASES; phase++) { 9021c317b77024 Laurentiu Palcu 2020-07-31 233 int sum = 0; 9021c317b77024 Laurentiu Palcu 2020-07-31 234 s64 ll_temp; 9021c317b77024 Laurentiu Palcu 2020-07-31 235 9021c317b77024 Laurentiu Palcu 2020-07-31 236 for (i = 0; i < PSC_NUM_TAPS; i++) 9021c317b77024 Laurentiu Palcu 2020-07-31 237 sum += coef[phase][i]; 9021c317b77024 Laurentiu Palcu 2020-07-31 238 for (i = 0; i < PSC_NUM_TAPS; i++) { 9021c317b77024 Laurentiu Palcu 2020-07-31 239 ll_temp = coef[phase][i]; 9021c317b77024 Laurentiu Palcu 2020-07-31 240 ll_temp <<= PSC_COEFF_PRECISION; 9021c317b77024 Laurentiu Palcu 2020-07-31 241 ll_temp += sum >> 1; f2cab5a0e8c3a4 Ville Syrjälä 2024-10-03 242 ll_temp = div_s64(ll_temp, sum); 9021c317b77024 Laurentiu Palcu 2020-07-31 243 coef[phase][i] = (int)ll_temp; 9021c317b77024 Laurentiu Palcu 2020-07-31 244 } 9021c317b77024 Laurentiu Palcu 2020-07-31 245 } 9021c317b77024 Laurentiu Palcu 2020-07-31 246 } 9021c317b77024 Laurentiu Palcu 2020-07-31 247 05faf1559de524 Laurentiu Palcu 2020-11-05 248 static void dcss_scaler_nearest_neighbor_filter(bool use_5_taps, 05faf1559de524 Laurentiu Palcu 2020-11-05 249 int coef[][PSC_NUM_TAPS]) 05faf1559de524 Laurentiu Palcu 2020-11-05 250 { 05faf1559de524 Laurentiu Palcu 2020-11-05 251 int i, j; 05faf1559de524 Laurentiu Palcu 2020-11-05 252 05faf1559de524 Laurentiu Palcu 2020-11-05 253 for (i = 0; i < PSC_STORED_PHASES; i++) 05faf1559de524 Laurentiu Palcu 2020-11-05 254 for (j = 0; j < PSC_NUM_TAPS; j++) 05faf1559de524 Laurentiu Palcu 2020-11-05 255 coef[i][j] = j == PSC_NUM_TAPS >> 1 ? 05faf1559de524 Laurentiu Palcu 2020-11-05 256 (1 << PSC_COEFF_PRECISION) : 0; 05faf1559de524 Laurentiu Palcu 2020-11-05 257 } 05faf1559de524 Laurentiu Palcu 2020-11-05 258 9021c317b77024 Laurentiu Palcu 2020-07-31 259 /** 9021c317b77024 Laurentiu Palcu 2020-07-31 260 * dcss_scaler_filter_design() - Compute filter coefficients using 9021c317b77024 Laurentiu Palcu 2020-07-31 261 * Gaussian filter. 9021c317b77024 Laurentiu Palcu 2020-07-31 262 * @src_length: length of input 9021c317b77024 Laurentiu Palcu 2020-07-31 263 * @dst_length: length of output 9021c317b77024 Laurentiu Palcu 2020-07-31 264 * @use_5_taps: 0 for 7 taps per phase, 1 for 5 taps 9021c317b77024 Laurentiu Palcu 2020-07-31 265 * @coef: output coefficients 9021c317b77024 Laurentiu Palcu 2020-07-31 266 */ 9021c317b77024 Laurentiu Palcu 2020-07-31 267 static void dcss_scaler_filter_design(int src_length, int dst_length, 9021c317b77024 Laurentiu Palcu 2020-07-31 268 bool use_5_taps, bool phase0_identity, 05faf1559de524 Laurentiu Palcu 2020-11-05 269 int coef[][PSC_NUM_TAPS], 05faf1559de524 Laurentiu Palcu 2020-11-05 270 bool nn_interpolation) 9021c317b77024 Laurentiu Palcu 2020-07-31 @271 { 9021c317b77024 Laurentiu Palcu 2020-07-31 272 int fc_q; 9021c317b77024 Laurentiu Palcu 2020-07-31 273 9021c317b77024 Laurentiu Palcu 2020-07-31 274 /* compute cutoff frequency */ 9021c317b77024 Laurentiu Palcu 2020-07-31 275 if (dst_length >= src_length) 9021c317b77024 Laurentiu Palcu 2020-07-31 276 fc_q = div_q(1, PSC_NUM_PHASES); 9021c317b77024 Laurentiu Palcu 2020-07-31 277 else 9021c317b77024 Laurentiu Palcu 2020-07-31 278 fc_q = div_q(dst_length, src_length * PSC_NUM_PHASES); 9021c317b77024 Laurentiu Palcu 2020-07-31 279 05faf1559de524 Laurentiu Palcu 2020-11-05 280 if (nn_interpolation) 05faf1559de524 Laurentiu Palcu 2020-11-05 281 dcss_scaler_nearest_neighbor_filter(use_5_taps, coef); 05faf1559de524 Laurentiu Palcu 2020-11-05 282 else 9021c317b77024 Laurentiu Palcu 2020-07-31 283 /* compute gaussian filter coefficients */ 9021c317b77024 Laurentiu Palcu 2020-07-31 284 dcss_scaler_gaussian_filter(fc_q, use_5_taps, phase0_identity, coef); 9021c317b77024 Laurentiu Palcu 2020-07-31 285 } 9021c317b77024 Laurentiu Palcu 2020-07-31 286 :::::: The code at line 174 was first introduced by commit :::::: 9021c317b77024fb2642af7e84ad944769ae0949 drm/imx: Add initial support for DCSS on iMX8MQ :::::: TO: Laurentiu Palcu :::::: CC: Lucas Stach -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki