Hi Ramalingam,

[auto build test ERROR on v4.5-rc7]
[cannot apply to drm-intel/for-linux-next next-20160311]
[if your patch is applied to the wrong git tree, please drop us a note to help 
improving the system]

url:    
https://github.com/0day-ci/linux/commits/Ramalingam-C/drm-i915-BXT-Tolerance-at-BXT-DSI-pipe_config-comparison/20160311-212559
config: x86_64-allmodconfig (attached as .config)
reproduce:
        # save the attached .config to linux build tree
        make ARCH=x86_64 

All error/warnings (new ones prefixed by >>):

   drivers/gpu/drm/i915/intel_display.c: In function 
'intel_pipe_config_compare':
>> drivers/gpu/drm/i915/intel_display.c:12655:16: error: implicit declaration 
>> of function 'enc_to_intel_dsi' [-Werror=implicit-function-declaration]
       intel_dsi = enc_to_intel_dsi(&intel_encoder->base); \
                   ^
>> drivers/gpu/drm/i915/intel_display.c:12672:4: note: in expansion of macro 
>> 'BXT_DSI_PIPE_CONF_CHECK_I_RANGE'
       BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
       ^
>> drivers/gpu/drm/i915/intel_display.c:12787:2: note: in expansion of macro 
>> 'PIPE_CONF_CHECK_I_RANGE'
     PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_htotal);
     ^
>> drivers/gpu/drm/i915/intel_display.c:12655:14: warning: assignment makes 
>> pointer from integer without a cast [-Wint-conversion]
       intel_dsi = enc_to_intel_dsi(&intel_encoder->base); \
                 ^
>> drivers/gpu/drm/i915/intel_display.c:12672:4: note: in expansion of macro 
>> 'BXT_DSI_PIPE_CONF_CHECK_I_RANGE'
       BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
       ^
>> drivers/gpu/drm/i915/intel_display.c:12787:2: note: in expansion of macro 
>> 'PIPE_CONF_CHECK_I_RANGE'
     PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_htotal);
     ^
   In file included from include/linux/list.h:8:0,
                    from include/linux/dmi.h:4,
                    from drivers/gpu/drm/i915/intel_display.c:27:
>> drivers/gpu/drm/i915/intel_display.c:12647:34: error: dereferencing pointer 
>> to incomplete type 'struct intel_dsi'
      DIV_ROUND_UP((3 * 8 * intel_dsi->lane_count * 100), \
                                     ^
   include/linux/kernel.h:67:30: note: in definition of macro 'DIV_ROUND_UP'
    #define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d))
                                 ^
>> drivers/gpu/drm/i915/intel_display.c:12660:4: note: in expansion of macro 
>> 'MAX_BXT_DSI_TIMING_RETRIVAL_ERR'
       MAX_BXT_DSI_TIMING_RETRIVAL_ERR))) { \
       ^
>> drivers/gpu/drm/i915/intel_display.c:12672:4: note: in expansion of macro 
>> 'BXT_DSI_PIPE_CONF_CHECK_I_RANGE'
       BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
       ^
>> drivers/gpu/drm/i915/intel_display.c:12787:2: note: in expansion of macro 
>> 'PIPE_CONF_CHECK_I_RANGE'
     PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_htotal);
     ^
>> drivers/gpu/drm/i915/intel_display.c:12648:4: error: implicit declaration of 
>> function 'dsi_pixel_format_bpp' [-Werror=implicit-function-declaration]
      (dsi_pixel_format_bpp(intel_dsi->pixel_format) * \
       ^
   include/linux/kernel.h:67:36: note: in definition of macro 'DIV_ROUND_UP'
    #define DIV_ROUND_UP(n,d) (((n) + (d) - 1) / (d))
                                       ^
>> drivers/gpu/drm/i915/intel_display.c:12660:4: note: in expansion of macro 
>> 'MAX_BXT_DSI_TIMING_RETRIVAL_ERR'
       MAX_BXT_DSI_TIMING_RETRIVAL_ERR))) { \
       ^
>> drivers/gpu/drm/i915/intel_display.c:12672:4: note: in expansion of macro 
>> 'BXT_DSI_PIPE_CONF_CHECK_I_RANGE'
       BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
       ^
>> drivers/gpu/drm/i915/intel_display.c:12787:2: note: in expansion of macro 
>> 'PIPE_CONF_CHECK_I_RANGE'
     PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_htotal);
     ^
>> drivers/gpu/drm/i915/intel_display.c:12655:14: warning: assignment makes 
>> pointer from integer without a cast [-Wint-conversion]
       intel_dsi = enc_to_intel_dsi(&intel_encoder->base); \
                 ^
>> drivers/gpu/drm/i915/intel_display.c:12672:4: note: in expansion of macro 
>> 'BXT_DSI_PIPE_CONF_CHECK_I_RANGE'
       BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
       ^
   drivers/gpu/drm/i915/intel_display.c:12788:2: note: in expansion of macro 
'PIPE_CONF_CHECK_I_RANGE'
     PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_hblank_start);
     ^
>> drivers/gpu/drm/i915/intel_display.c:12655:14: warning: assignment makes 
>> pointer from integer without a cast [-Wint-conversion]
       intel_dsi = enc_to_intel_dsi(&intel_encoder->base); \
                 ^
>> drivers/gpu/drm/i915/intel_display.c:12672:4: note: in expansion of macro 
>> 'BXT_DSI_PIPE_CONF_CHECK_I_RANGE'
       BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
       ^
   drivers/gpu/drm/i915/intel_display.c:12789:2: note: in expansion of macro 
'PIPE_CONF_CHECK_I_RANGE'
     PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_hblank_end);
     ^
>> drivers/gpu/drm/i915/intel_display.c:12655:14: warning: assignment makes 
>> pointer from integer without a cast [-Wint-conversion]
       intel_dsi = enc_to_intel_dsi(&intel_encoder->base); \
                 ^
>> drivers/gpu/drm/i915/intel_display.c:12672:4: note: in expansion of macro 
>> 'BXT_DSI_PIPE_CONF_CHECK_I_RANGE'
       BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
       ^
   drivers/gpu/drm/i915/intel_display.c:12790:2: note: in expansion of macro 
'PIPE_CONF_CHECK_I_RANGE'
     PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_hsync_start);
     ^

vim +/enc_to_intel_dsi +12655 drivers/gpu/drm/i915/intel_display.c

 12641   * htotal = hactive + hfp + hsync + hbp. Here last three lements might 
have
 12642   * the converson error, hence we consider the 3 times of error as 
tolerance.
 12643   */
 12644  
 12645  #define MAX_BXT_DSI_TIMING_RETRIVAL_ERR \
 12646                  (intel_dsi == NULL ? 0 : \
 12647                  DIV_ROUND_UP((3 * 8 * intel_dsi->lane_count * 100), \
 12648                  (dsi_pixel_format_bpp(intel_dsi->pixel_format) * \
 12649                          intel_dsi->burst_mode_ratio)))
 12650  
 12651  #define BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) { \
 12652          for_each_encoder_on_crtc(dev, &crtc->base, \
 12653                                          intel_encoder) { \
 12654                  if (intel_encoder->type == INTEL_OUTPUT_DSI) { \
 12655                          intel_dsi = 
enc_to_intel_dsi(&intel_encoder->base); \
 12656                  } \
 12657          } \
 12658          if (!(current_config->name < pipe_config->name && \
 12659                  current_config->name >= (pipe_config->name - \
 12660                          MAX_BXT_DSI_TIMING_RETRIVAL_ERR))) { \
 12661                  INTEL_ERR_OR_DBG_KMS("mismatch in " #name " " \
 12662                    "(expected %i, found %i(Err tolerance 
considered))\n", \
 12663                    current_config->name, \
 12664                    pipe_config->name); \
 12665                  ret = false; \
 12666          } \
 12667  }
 12668  
 12669  #define PIPE_CONF_CHECK_I_RANGE(name) { \
 12670          if (current_config->name != pipe_config->name) { \
 12671                  if (IS_BROXTON(dev) && crtc->config->has_dsi_encoder) { 
\
 12672                          BXT_DSI_PIPE_CONF_CHECK_I_RANGE(name) \
 12673                  } else { \
 12674                          INTEL_ERR_OR_DBG_KMS("mismatch in " #name " " \
 12675                            "(expected %i, found %i)\n", \
 12676                            current_config->name, \
 12677                            pipe_config->name); \
 12678                          ret = false; \
 12679                  } \
 12680          } \
 12681  }
 12682  
 12683  #define PIPE_CONF_CHECK_M_N(name) \
 12684          if (!intel_compare_link_m_n(&current_config->name, \
 12685                                      &pipe_config->name,\
 12686                                      adjust)) { \
 12687                  INTEL_ERR_OR_DBG_KMS("mismatch in " #name " " \
 12688                            "(expected tu %i gmch %i/%i link %i/%i, " \
 12689                            "found tu %i, gmch %i/%i link %i/%i)\n", \
 12690                            current_config->name.tu, \
 12691                            current_config->name.gmch_m, \
 12692                            current_config->name.gmch_n, \
 12693                            current_config->name.link_m, \
 12694                            current_config->name.link_n, \
 12695                            pipe_config->name.tu, \
 12696                            pipe_config->name.gmch_m, \
 12697                            pipe_config->name.gmch_n, \
 12698                            pipe_config->name.link_m, \
 12699                            pipe_config->name.link_n); \
 12700                  ret = false; \
 12701          }
 12702  
 12703  #define PIPE_CONF_CHECK_M_N_ALT(name, alt_name) \
 12704          if (!intel_compare_link_m_n(&current_config->name, \
 12705                                      &pipe_config->name, adjust) && \
 12706              !intel_compare_link_m_n(&current_config->alt_name, \
 12707                                      &pipe_config->name, adjust)) { \
 12708                  INTEL_ERR_OR_DBG_KMS("mismatch in " #name " " \
 12709                            "(expected tu %i gmch %i/%i link %i/%i, " \
 12710                            "or tu %i gmch %i/%i link %i/%i, " \
 12711                            "found tu %i, gmch %i/%i link %i/%i)\n", \
 12712                            current_config->name.tu, \
 12713                            current_config->name.gmch_m, \
 12714                            current_config->name.gmch_n, \
 12715                            current_config->name.link_m, \
 12716                            current_config->name.link_n, \
 12717                            current_config->alt_name.tu, \
 12718                            current_config->alt_name.gmch_m, \
 12719                            current_config->alt_name.gmch_n, \
 12720                            current_config->alt_name.link_m, \
 12721                            current_config->alt_name.link_n, \
 12722                            pipe_config->name.tu, \
 12723                            pipe_config->name.gmch_m, \
 12724                            pipe_config->name.gmch_n, \
 12725                            pipe_config->name.link_m, \
 12726                            pipe_config->name.link_n); \
 12727                  ret = false; \
 12728          }
 12729  
 12730  /* This is required for BDW+ where there is only one set of registers 
for
 12731   * switching between high and low RR.
 12732   * This macro can be used whenever a comparison has to be made between 
one
 12733   * hw state and multiple sw state variables.
 12734   */
 12735  #define PIPE_CONF_CHECK_I_ALT(name, alt_name) \
 12736          if ((current_config->name != pipe_config->name) && \
 12737                  (current_config->alt_name != pipe_config->name)) { \
 12738                          INTEL_ERR_OR_DBG_KMS("mismatch in " #name " " \
 12739                                    "(expected %i or %i, found %i)\n", \
 12740                                    current_config->name, \
 12741                                    current_config->alt_name, \
 12742                                    pipe_config->name); \
 12743                          ret = false; \
 12744          }
 12745  
 12746  #define PIPE_CONF_CHECK_FLAGS(name, mask)       \
 12747          if ((current_config->name ^ pipe_config->name) & (mask)) { \
 12748                  INTEL_ERR_OR_DBG_KMS("mismatch in " #name "(" #mask ") 
" \
 12749                            "(expected %i, found %i)\n", \
 12750                            current_config->name & (mask), \
 12751                            pipe_config->name & (mask)); \
 12752                  ret = false; \
 12753          }
 12754  
 12755  #define PIPE_CONF_CHECK_CLOCK_FUZZY(name) \
 12756          if (!intel_fuzzy_clock_check(current_config->name, 
pipe_config->name)) { \
 12757                  INTEL_ERR_OR_DBG_KMS("mismatch in " #name " " \
 12758                            "(expected %i, found %i)\n", \
 12759                            current_config->name, \
 12760                            pipe_config->name); \
 12761                  ret = false; \
 12762          }
 12763  
 12764  #define PIPE_CONF_QUIRK(quirk)  \
 12765          ((current_config->quirks | pipe_config->quirks) & (quirk))
 12766  
 12767          PIPE_CONF_CHECK_I(cpu_transcoder);
 12768  
 12769          PIPE_CONF_CHECK_I(has_pch_encoder);
 12770          PIPE_CONF_CHECK_I(fdi_lanes);
 12771          PIPE_CONF_CHECK_M_N(fdi_m_n);
 12772  
 12773          PIPE_CONF_CHECK_I(has_dp_encoder);
 12774          PIPE_CONF_CHECK_I(lane_count);
 12775  
 12776          if (INTEL_INFO(dev)->gen < 8) {
 12777                  PIPE_CONF_CHECK_M_N(dp_m_n);
 12778  
 12779                  if (current_config->has_drrs)
 12780                          PIPE_CONF_CHECK_M_N(dp_m2_n2);
 12781          } else
 12782                  PIPE_CONF_CHECK_M_N_ALT(dp_m_n, dp_m2_n2);
 12783  
 12784          PIPE_CONF_CHECK_I(has_dsi_encoder);
 12785  
 12786          PIPE_CONF_CHECK_I(base.adjusted_mode.crtc_hdisplay);
 12787          PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_htotal);
 12788          PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_hblank_start);
 12789          PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_hblank_end);
 12790          PIPE_CONF_CHECK_I_RANGE(base.adjusted_mode.crtc_hsync_start);

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Attachment: .config.gz
Description: Binary data

_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to