Re: [PATCH 2/3] Restructure output format computation for better expandability

From: kernel test robot
Date: Wed May 05 2021 - 16:18:19 EST


Hi Werner,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-intel/for-linux-next]
[also build test ERROR on next-20210505]
[cannot apply to v5.12]
[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/Werner-Sembach/New-function-to-avoid-duplicate-code-in-upcomming-commits/20210505-231103
base: git://anongit.freedesktop.org/drm-intel for-linux-next
config: x86_64-randconfig-a012-20210505 (attached as .config)
compiler: clang version 13.0.0 (https://github.com/llvm/llvm-project 8f5a2a5836cc8e4c1def2bdeb022e7b496623439)
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 x86_64 cross compiling tool for clang build
# apt-get install binutils-x86-64-linux-gnu
# https://github.com/0day-ci/linux/commit/66df58af8a9f5c112690fc80f77271b9f6567765
git remote add linux-review https://github.com/0day-ci/linux
git fetch --no-tags linux-review Werner-Sembach/New-function-to-avoid-duplicate-code-in-upcomming-commits/20210505-231103
git checkout 66df58af8a9f5c112690fc80f77271b9f6567765
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 ARCH=x86_64

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

All errors (new ones prefixed by >>):

>> drivers/gpu/drm/i915/display/intel_hdmi.c:2166:6: error: use of undeclared identifier 'crtc_state'
if (crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR420) {
^
1 error generated.


vim +/crtc_state +2166 drivers/gpu/drm/i915/display/intel_hdmi.c

2131
2132 int intel_hdmi_compute_config(struct intel_encoder *encoder,
2133 struct intel_crtc_state *pipe_config,
2134 struct drm_connector_state *conn_state)
2135 {
2136 struct intel_hdmi *intel_hdmi = enc_to_intel_hdmi(encoder);
2137 struct drm_i915_private *dev_priv = to_i915(encoder->base.dev);
2138 struct drm_display_mode *adjusted_mode = &pipe_config->hw.adjusted_mode;
2139 struct drm_connector *connector = conn_state->connector;
2140 struct drm_scdc *scdc = &connector->display_info.hdmi.scdc;
2141 int ret;
2142
2143 if (adjusted_mode->flags & DRM_MODE_FLAG_DBLSCAN)
2144 return -EINVAL;
2145
2146 pipe_config->output_format = INTEL_OUTPUT_FORMAT_RGB;
2147 pipe_config->has_hdmi_sink = intel_has_hdmi_sink(intel_hdmi,
2148 conn_state);
2149
2150 if (pipe_config->has_hdmi_sink)
2151 pipe_config->has_infoframe = true;
2152
2153 if (adjusted_mode->flags & DRM_MODE_FLAG_DBLCLK)
2154 pipe_config->pixel_multiplier = 2;
2155
2156 if (HAS_PCH_SPLIT(dev_priv) && !HAS_DDI(dev_priv))
2157 pipe_config->has_pch_encoder = true;
2158
2159 pipe_config->has_audio =
2160 intel_hdmi_has_audio(encoder, pipe_config, conn_state);
2161
2162 ret = intel_hdmi_compute_output_format(encoder, pipe_config, conn_state);
2163 if (ret)
2164 return ret;
2165
> 2166 if (crtc_state->output_format == INTEL_OUTPUT_FORMAT_YCBCR420) {
2167 ret = intel_pch_panel_fitting(pipe_config, conn_state);
2168 if (ret)
2169 return ret;
2170 }
2171
2172 pipe_config->limited_color_range =
2173 intel_hdmi_limited_color_range(pipe_config, conn_state);
2174
2175 if (conn_state->picture_aspect_ratio)
2176 adjusted_mode->picture_aspect_ratio =
2177 conn_state->picture_aspect_ratio;
2178
2179 pipe_config->lane_count = 4;
2180
2181 if (scdc->scrambling.supported && DISPLAY_VER(dev_priv) >= 10) {
2182 if (scdc->scrambling.low_rates)
2183 pipe_config->hdmi_scrambling = true;
2184
2185 if (pipe_config->port_clock > 340000) {
2186 pipe_config->hdmi_scrambling = true;
2187 pipe_config->hdmi_high_tmds_clock_ratio = true;
2188 }
2189 }
2190
2191 intel_hdmi_compute_gcp_infoframe(encoder, pipe_config,
2192 conn_state);
2193
2194 if (!intel_hdmi_compute_avi_infoframe(encoder, pipe_config, conn_state)) {
2195 drm_dbg_kms(&dev_priv->drm, "bad AVI infoframe\n");
2196 return -EINVAL;
2197 }
2198
2199 if (!intel_hdmi_compute_spd_infoframe(encoder, pipe_config, conn_state)) {
2200 drm_dbg_kms(&dev_priv->drm, "bad SPD infoframe\n");
2201 return -EINVAL;
2202 }
2203
2204 if (!intel_hdmi_compute_hdmi_infoframe(encoder, pipe_config, conn_state)) {
2205 drm_dbg_kms(&dev_priv->drm, "bad HDMI infoframe\n");
2206 return -EINVAL;
2207 }
2208
2209 if (!intel_hdmi_compute_drm_infoframe(encoder, pipe_config, conn_state)) {
2210 drm_dbg_kms(&dev_priv->drm, "bad DRM infoframe\n");
2211 return -EINVAL;
2212 }
2213
2214 return 0;
2215 }
2216

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

Attachment: .config.gz
Description: application/gzip