Re: [Intel-gfx] [PATCH v2 04/11] drm/i915: Shove the PHY test into the hotplug work

kernel test robot
2020-09-30T08:10:18Z

[-- Attachment #1: Type: text/plain, Size: 3845 bytes --]

Hi Ville,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on drm-intel/for-linux-next]
[also build test WARNING on drm-tip/drm-tip v5.9-rc7 next-20200929]
[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/Ville-Syrjala/drm-i915-Plumb-crtc-state-to-link-training-code/20200930-073629
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-s021-20200930 (attached as .config)
compiler: gcc-9 (Debian 9.3.0-15) 9.3.0
reproduce:
# apt-get install sparse
# sparse version: v0.6.2-201-g24bdaac6-dirty
# https://github.com/0day-ci/linux/commit/a504af17c918ba91652d9c0c5ed45d9e0ca98dfd
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Ville-Syrjala/drm-i915-Plumb-crtc-state-to-link-training-code/20200930-073629
git checkout a504af17c918ba91652d9c0c5ed45d9e0ca98dfd
# save the attached .config to linux build tree
make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=x86_64

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@intel.com>

echo
echo "sparse warnings: (new ones prefixed by >>)"
echo
>> drivers/gpu/drm/i915/display/intel_dp.c:5977:39: sparse: sparse: mixing different enum types:
>> drivers/gpu/drm/i915/display/intel_dp.c:5977:39: sparse: unsigned int enum drm_connector_status
>> drivers/gpu/drm/i915/display/intel_dp.c:5977:39: sparse: unsigned int enum intel_hotplug_state

vim +5977 drivers/gpu/drm/i915/display/intel_dp.c

5951
5952 /*
5953 * If display is now connected check links status,
5954 * there has been known issues of link loss triggering
5955 * long pulse.
5956 *
5957 * Some sinks (eg. ASUS PB287Q) seem to perform some
5958 * weird HPD ping pong during modesets. So we can apparently
5959 * end up with HPD going low during a modeset, and then
5960 * going back up soon after. And once that happens we must
5961 * retrain the link to get a picture. That's in case no
5962 * userspace component reacted to intermittent HPD dip.
5963 */
5964 static enum intel_hotplug_state
5965 intel_dp_hotplug(struct intel_encoder *encoder,
5966 struct intel_connector *connector)
5967 {
5968 struct intel_dp *intel_dp = enc_to_intel_dp(encoder);
5969 struct drm_modeset_acquire_ctx ctx;
5970 enum intel_hotplug_state state;
5971 int ret;
5972
5973 if (intel_dp->compliance.test_active &&
5974 intel_dp->compliance.test_type == DP_TEST_LINK_PHY_TEST_PATTERN) {
5975 intel_dp_phy_test(encoder);
5976 /* just do the PHY test and nothing else */
> 5977 return connector->base.status;
5978 }
5979
5980 state = intel_encoder_hotplug(encoder, connector);
5981
5982 drm_modeset_acquire_init(&ctx, 0);
5983
5984 for (;;) {
5985 ret = intel_dp_retrain_link(encoder, &ctx);
5986
5987 if (ret == -EDEADLK) {
5988 drm_modeset_backoff(&ctx);
5989 continue;
5990 }
5991
5992 break;
5993 }
5994
5995 drm_modeset_drop_locks(&ctx);
5996 drm_modeset_acquire_fini(&ctx);
5997 drm_WARN(encoder->base.dev, ret,
5998 "Acquiring modeset locks failed with %i\n", ret);
5999
6000 /*
6001 * Keeping it consistent with intel_ddi_hotplug() and
6002 * intel_hdmi_hotplug().
6003 */
6004 if (state == INTEL_HOTPLUG_UNCHANGED && !connector->hotplug_retries)
6005 state = INTEL_HOTPLUG_RETRY;
6006
6007 return state;
6008 }
6009

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 38016 bytes --]

[-- Attachment #3: Type: text/plain, Size: 160 bytes --]