tree: git://anongit.freedesktop.org/drm-intel for-linux-next head: 0e7dd6fe96020e6b7f5e068bf1c66078e0b145d3 commit: 9d9bb71f3e115b75ec5e38f087e159a87fc0413a [4/6] drm/i915: Extract opregion vbt presence check config: sparc64-allmodconfig (https://download.01.org/0day-ci/archive/20240312/202403120756.JTkGHCip-lkp@xxxxxxxxx/config) compiler: sparc64-linux-gcc (GCC) 13.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240312/202403120756.JTkGHCip-lkp@xxxxxxxxx/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@xxxxxxxxx> | Closes: https://lore.kernel.org/oe-kbuild-all/202403120756.JTkGHCip-lkp@xxxxxxxxx/ All errors (new ones prefixed by >>): drivers/gpu/drm/i915/display/intel_bios.c: In function 'intel_bios_is_lvds_present': >> drivers/gpu/drm/i915/display/intel_bios.c:3417:24: error: implicit declaration of function 'intel_opregion_vbt_present'; did you mean 'intel_opregion_asle_present'? [-Werror=implicit-function-declaration] 3417 | return intel_opregion_vbt_present(i915); | ^~~~~~~~~~~~~~~~~~~~~~~~~~ | intel_opregion_asle_present cc1: some warnings being treated as errors vim +3417 drivers/gpu/drm/i915/display/intel_bios.c 3374 3375 /** 3376 * intel_bios_is_lvds_present - is LVDS present in VBT 3377 * @i915: i915 device instance 3378 * @i2c_pin: i2c pin for LVDS if present 3379 * 3380 * Return true if LVDS is present. If no child devices were parsed from VBT, 3381 * assume LVDS is present. 3382 */ 3383 bool intel_bios_is_lvds_present(struct drm_i915_private *i915, u8 *i2c_pin) 3384 { 3385 const struct intel_bios_encoder_data *devdata; 3386 3387 if (list_empty(&i915->display.vbt.display_devices)) 3388 return true; 3389 3390 list_for_each_entry(devdata, &i915->display.vbt.display_devices, node) { 3391 const struct child_device_config *child = &devdata->child; 3392 3393 /* If the device type is not LFP, continue. 3394 * We have to check both the new identifiers as well as the 3395 * old for compatibility with some BIOSes. 3396 */ 3397 if (child->device_type != DEVICE_TYPE_INT_LFP && 3398 child->device_type != DEVICE_TYPE_LFP) 3399 continue; 3400 3401 if (intel_gmbus_is_valid_pin(i915, child->i2c_pin)) 3402 *i2c_pin = child->i2c_pin; 3403 3404 /* However, we cannot trust the BIOS writers to populate 3405 * the VBT correctly. Since LVDS requires additional 3406 * information from AIM blocks, a non-zero addin offset is 3407 * a good indicator that the LVDS is actually present. 3408 */ 3409 if (child->addin_offset) 3410 return true; 3411 3412 /* But even then some BIOS writers perform some black magic 3413 * and instantiate the device without reference to any 3414 * additional data. Trust that if the VBT was written into 3415 * the OpRegion then they have validated the LVDS's existence. 3416 */ > 3417 return intel_opregion_vbt_present(i915); 3418 } 3419 3420 return false; 3421 } 3422 -- 0-DAY CI Kernel Test Service https://github.com/intel/lkp-tests/wiki