All of lore.kernel.org
 help / color / mirror / Atom feed
* [linux-next:master 3549/14737] drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:463:28: sparse: sparse: not a function get_max_limits
@ 2026-08-13  7:46 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-08-13  7:46 UTC (permalink / raw)
  To: oe-kbuild; +Cc: lkp

:::::: 
:::::: Manual check reason: "low confidence static check warning: drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:463:28: sparse: sparse: not a function get_max_limits"
:::::: 

BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Imre Deak <imre.deak@intel.com>
CC: "Michał Grzelak" <michal.grzelak@intel.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head:   28d012efb4327f9c75d5e042a7c91e9a542efa98
commit: 3d0e60d75172265d5e4dff9b148e4adf5fd561c9 [3549/14737] drm/i915/kunit: DP link: add update config tests
:::::: branch date: 14 hours ago
:::::: commit date: 5 weeks ago
config: i386-randconfig-063-20260812 (https://download.01.org/0day-ci/archive/20260813/202608131516.HWw20vIE-lkp@intel.com/config)
compiler: clang version 22.1.3 (https://github.com/llvm/llvm-project e9846648fd6183ee6d8cbdb4502213fcf902a211)
sparse: v0.6.5-rc1
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260813/202608131516.HWw20vIE-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 <lkp@intel.com>
| Closes: https://lore.kernel.org/r/202608131516.HWw20vIE-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:274:24: sparse: sparse: not a function iter_start
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:286:22: sparse: sparse: not a function iter_end
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:297:20: sparse: sparse: not a function update
>> drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:463:28: sparse: sparse: not a function get_max_limits
>> drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:464:28: sparse: sparse: not a function set_max_limits
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:466:24: sparse: sparse: not a function iter_start
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:505:22: sparse: sparse: not a function iter_end
>> drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:509:31: sparse: sparse: not a function get_max_bw_config
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:513:9: sparse: sparse: not a function set_max_limits
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:595:41: sparse: sparse: not a function set_max_limits
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:617:42: sparse: sparse: not a function update
>> drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:677:17: sparse: sparse: not a function disable_config
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:1082:59: sparse: sparse: not a function init
   drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:1093:36: sparse: sparse: not a function cleanup

vim +463 drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c

3d0e60d7517226 Imre Deak 2026-07-07  443  
3d0e60d7517226 Imre Deak 2026-07-07  444  static void
3d0e60d7517226 Imre Deak 2026-07-07  445  verify_link_caps_for_order(const struct test_config_table *expected_table,
3d0e60d7517226 Imre Deak 2026-07-07  446  			   struct intel_dp_link_caps *link_caps,
3d0e60d7517226 Imre Deak 2026-07-07  447  			   struct intel_dp_link_caps_order config_order,
3d0e60d7517226 Imre Deak 2026-07-07  448  			   const struct intel_dp_link_config *max_limits)
3d0e60d7517226 Imre Deak 2026-07-07  449  {
3d0e60d7517226 Imre Deak 2026-07-07  450  	struct kunit *test = expected_table->test;
3d0e60d7517226 Imre Deak 2026-07-07  451  	struct test_ctx *ctx = test->priv;
3d0e60d7517226 Imre Deak 2026-07-07  452  	const struct intel_dp_link_caps_test_ops *ops =
3d0e60d7517226 Imre Deak 2026-07-07  453  		ctx->link_caps_ops;
3d0e60d7517226 Imre Deak 2026-07-07  454  	struct intel_dp_link_config expected_max_bw_config = {};
3d0e60d7517226 Imre Deak 2026-07-07  455  	struct intel_dp_link_config actual_max_bw_config;
3d0e60d7517226 Imre Deak 2026-07-07  456  	struct intel_dp_link_config last_config = {};
3d0e60d7517226 Imre Deak 2026-07-07  457  	struct intel_dp_link_config old_max_limits;
3d0e60d7517226 Imre Deak 2026-07-07  458  	struct intel_dp_link_config iter_config;
3d0e60d7517226 Imre Deak 2026-07-07  459  	struct intel_dp_link_caps_iter iter;
3d0e60d7517226 Imre Deak 2026-07-07  460  	int num_actual_configs = 0;
3d0e60d7517226 Imre Deak 2026-07-07  461  	int max_bw = 0;
3d0e60d7517226 Imre Deak 2026-07-07  462  
3d0e60d7517226 Imre Deak 2026-07-07 @463  	ops->get_max_limits(link_caps, &old_max_limits);
3d0e60d7517226 Imre Deak 2026-07-07 @464  	ops->set_max_limits(link_caps, max_limits);
3d0e60d7517226 Imre Deak 2026-07-07  465  
3d0e60d7517226 Imre Deak 2026-07-07  466  	ops->iter_start(&iter, link_caps, config_order, INTEL_DP_LINK_CAPS_FILTER_ALL);
3d0e60d7517226 Imre Deak 2026-07-07  467  	for_each_dp_link_config(&iter, &iter_config) {
3d0e60d7517226 Imre Deak 2026-07-07  468  		int bw;
3d0e60d7517226 Imre Deak 2026-07-07  469  
3d0e60d7517226 Imre Deak 2026-07-07  470  		KUNIT_EXPECT_LE(test, iter_config.rate, max_limits->rate);
3d0e60d7517226 Imre Deak 2026-07-07  471  		KUNIT_EXPECT_LE(test, iter_config.lane_count, max_limits->lane_count);
3d0e60d7517226 Imre Deak 2026-07-07  472  
3d0e60d7517226 Imre Deak 2026-07-07  473  		num_actual_configs++;
3d0e60d7517226 Imre Deak 2026-07-07  474  
3d0e60d7517226 Imre Deak 2026-07-07  475  		/*
3d0e60d7517226 Imre Deak 2026-07-07  476  		 * Verify the config's rate/lane-count values and its ordering relative
3d0e60d7517226 Imre Deak 2026-07-07  477  		 * to the previous config.
3d0e60d7517226 Imre Deak 2026-07-07  478  		 */
3d0e60d7517226 Imre Deak 2026-07-07  479  		if (last_config.rate)
3d0e60d7517226 Imre Deak 2026-07-07  480  			verify_config_order(test, config_order, &last_config, &iter_config);
3d0e60d7517226 Imre Deak 2026-07-07  481  		last_config = iter_config;
3d0e60d7517226 Imre Deak 2026-07-07  482  
3d0e60d7517226 Imre Deak 2026-07-07  483  		KUNIT_EXPECT_TRUE(test, has_rate(&expected_table->rates,
3d0e60d7517226 Imre Deak 2026-07-07  484  						 iter_config.rate));
3d0e60d7517226 Imre Deak 2026-07-07  485  		KUNIT_EXPECT_LE(test, iter_config.lane_count,
3d0e60d7517226 Imre Deak 2026-07-07  486  				      expected_table->max_lane_count);
3d0e60d7517226 Imre Deak 2026-07-07  487  		KUNIT_EXPECT_TRUE(test, is_power_of_2(iter_config.lane_count));
3d0e60d7517226 Imre Deak 2026-07-07  488  
3d0e60d7517226 Imre Deak 2026-07-07  489  		/* Verify the config's disabled state */
3d0e60d7517226 Imre Deak 2026-07-07  490  		KUNIT_EXPECT_FALSE(test, has_config(&expected_table->disabled_configs,
3d0e60d7517226 Imre Deak 2026-07-07  491  						    &iter_config));
3d0e60d7517226 Imre Deak 2026-07-07  492  
3d0e60d7517226 Imre Deak 2026-07-07  493  		/*
3d0e60d7517226 Imre Deak 2026-07-07  494  		 * Update the max limits for allowed configs, verified at the
3d0e60d7517226 Imre Deak 2026-07-07  495  		 * end for the whole config table.
3d0e60d7517226 Imre Deak 2026-07-07  496  		 */
3d0e60d7517226 Imre Deak 2026-07-07  497  
3d0e60d7517226 Imre Deak 2026-07-07  498  		bw = drm_dp_max_dprx_data_rate(iter_config.rate, iter_config.lane_count);
3d0e60d7517226 Imre Deak 2026-07-07  499  		if (bw > max_bw ||
3d0e60d7517226 Imre Deak 2026-07-07  500  		    (bw == max_bw && iter_config.rate > expected_max_bw_config.rate)) {
3d0e60d7517226 Imre Deak 2026-07-07  501  			max_bw = bw;
3d0e60d7517226 Imre Deak 2026-07-07  502  			expected_max_bw_config = iter_config;
3d0e60d7517226 Imre Deak 2026-07-07  503  		}
3d0e60d7517226 Imre Deak 2026-07-07  504  	}
3d0e60d7517226 Imre Deak 2026-07-07  505  	ops->iter_end(&iter);
3d0e60d7517226 Imre Deak 2026-07-07  506  
3d0e60d7517226 Imre Deak 2026-07-07  507  	KUNIT_EXPECT_EQ(test, num_actual_configs, expected_num_configs(expected_table, max_limits));
3d0e60d7517226 Imre Deak 2026-07-07  508  
3d0e60d7517226 Imre Deak 2026-07-07 @509  	ops->get_max_bw_config(link_caps, &actual_max_bw_config);
3d0e60d7517226 Imre Deak 2026-07-07  510  	KUNIT_EXPECT_TRUE(test, link_configs_match(&expected_max_bw_config,
3d0e60d7517226 Imre Deak 2026-07-07  511  						   &actual_max_bw_config));
3d0e60d7517226 Imre Deak 2026-07-07  512  
3d0e60d7517226 Imre Deak 2026-07-07  513  	KUNIT_ASSERT_TRUE(test, ops->set_max_limits(link_caps, &old_max_limits));
3d0e60d7517226 Imre Deak 2026-07-07  514  }
3d0e60d7517226 Imre Deak 2026-07-07  515  

--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2026-08-13  7:46 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-08-13  7:46 [linux-next:master 3549/14737] drivers/gpu/drm/i915/display/tests/intel_dp_link_test.c:463:28: sparse: sparse: not a function get_max_limits kernel test robot

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.