Hi Vandita,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-intel/for-linux-next]
[cannot apply to v5.4-rc8 next-20191118]
[if your patch is applied to the wrong git tree, please drop us a note to help
improve the system. BTW, we also suggest to use '--base' option to specify the
base tree in git format-patch, please see https://stackoverflow.com/a/37406982]

url:    
https://github.com/0day-ci/linux/commits/Vandita-Kulkarni/Add-support-for-mipi-dsi-cmd-mode/20191120-015713
base:   git://anongit.freedesktop.org/drm-intel for-linux-next
config: i386-defconfig (attached as .config)
compiler: gcc-7 (Debian 7.4.0-14) 7.4.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <l...@intel.com>

All errors (new ones prefixed by >>):

   drivers/gpu/drm/i915/i915_irq.c: In function 
'gen11_dsi_te_interrupt_handler':
>> drivers/gpu/drm/i915/i915_irq.c:2252:24: error: 'DSI1_TE' undeclared (first 
>> use in this function)
     port = ((te_trigger & DSI1_TE && val) || (te_trigger & DSI0_TE)) ?
                           ^~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2252:24: note: each undeclared identifier is 
reported only once for each function it appears in
>> drivers/gpu/drm/i915/i915_irq.c:2252:57: error: 'DSI0_TE' undeclared (first 
>> use in this function); did you mean 'DSI1_TE'?
     port = ((te_trigger & DSI1_TE && val) || (te_trigger & DSI0_TE)) ?
                                                            ^~~~~~~
                                                            DSI1_TE
   In file included from 
drivers/gpu/drm/i915/display/intel_display_types.h:46:0,
                    from drivers/gpu/drm/i915/i915_irq.c:39:
>> drivers/gpu/drm/i915/i915_irq.c:2283:18: error: implicit declaration of 
>> function 'DSI_INTR_IDENT_REG'; did you mean 'GEN11_INTR_IDENTITY_REG'? 
>> [-Werror=implicit-function-declaration]
     tmp = I915_READ(DSI_INTR_IDENT_REG(port));
                     ^
   drivers/gpu/drm/i915/i915_drv.h:1979:45: note: in definition of macro 
'__I915_REG_OP'
     intel_uncore_##op__(&(dev_priv__)->uncore, __VA_ARGS__)
                                                ^~~~~~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2283:8: note: in expansion of macro 
'I915_READ'
     tmp = I915_READ(DSI_INTR_IDENT_REG(port));
           ^~~~~~~~~
   drivers/gpu/drm/i915/i915_drv.h:1981:57: error: incompatible type for 
argument 2 of 'intel_uncore_read'
    #define I915_READ(reg__)  __I915_REG_OP(read, dev_priv, (reg__))
                                                            ^
   drivers/gpu/drm/i915/i915_drv.h:1979:45: note: in definition of macro 
'__I915_REG_OP'
     intel_uncore_##op__(&(dev_priv__)->uncore, __VA_ARGS__)
                                                ^~~~~~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2283:8: note: in expansion of macro 
'I915_READ'
     tmp = I915_READ(DSI_INTR_IDENT_REG(port));
           ^~~~~~~~~
   In file included from drivers/gpu/drm/i915/gt/uc/intel_guc.h:9:0,
                    from drivers/gpu/drm/i915/gt/uc/intel_uc.h:9,
                    from drivers/gpu/drm/i915/gt/intel_gt_types.h:16,
                    from drivers/gpu/drm/i915/i915_drv.h:81,
                    from drivers/gpu/drm/i915/display/intel_display_types.h:46,
                    from drivers/gpu/drm/i915/i915_irq.c:39:
   drivers/gpu/drm/i915/intel_uncore.h:287:22: note: expected 'i915_reg_t {aka 
struct <anonymous>}' but argument is of type 'int'
    static inline u##x__ intel_uncore_##name__(struct intel_uncore *uncore, \
                         ^
   drivers/gpu/drm/i915/intel_uncore.h:302:1: note: in expansion of macro 
'__uncore_read'
    __uncore_read(read, 32, l, true)
    ^~~~~~~~~~~~~
   In file included from 
drivers/gpu/drm/i915/display/intel_display_types.h:46:0,
                    from drivers/gpu/drm/i915/i915_irq.c:39:
   drivers/gpu/drm/i915/i915_drv.h:1982:65: error: incompatible type for 
argument 2 of 'intel_uncore_write'
    #define I915_WRITE(reg__, val__) __I915_REG_OP(write, dev_priv, (reg__), 
(val__))
                                                                    ^
   drivers/gpu/drm/i915/i915_drv.h:1979:45: note: in definition of macro 
'__I915_REG_OP'
     intel_uncore_##op__(&(dev_priv__)->uncore, __VA_ARGS__)
                                                ^~~~~~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2284:2: note: in expansion of macro 
'I915_WRITE'
     I915_WRITE(DSI_INTR_IDENT_REG(port), tmp);
     ^~~~~~~~~~
   In file included from drivers/gpu/drm/i915/gt/uc/intel_guc.h:9:0,
                    from drivers/gpu/drm/i915/gt/uc/intel_uc.h:9,
                    from drivers/gpu/drm/i915/gt/intel_gt_types.h:16,
                    from drivers/gpu/drm/i915/i915_drv.h:81,
                    from drivers/gpu/drm/i915/display/intel_display_types.h:46,
                    from drivers/gpu/drm/i915/i915_irq.c:39:
   drivers/gpu/drm/i915/intel_uncore.h:294:20: note: expected 'i915_reg_t {aka 
struct <anonymous>}' but argument is of type 'int'
    static inline void intel_uncore_##name__(struct intel_uncore *uncore, \
                       ^
   drivers/gpu/drm/i915/intel_uncore.h:308:1: note: in expansion of macro 
'__uncore_write'
    __uncore_write(write, 32, l, true)
    ^~~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_irq.c: In function 'gen8_de_irq_handler':
   drivers/gpu/drm/i915/i915_irq.c:2354:23: error: 'DSI0_TE' undeclared (first 
use in this function)
        tmp_mask = iir & (DSI0_TE | DSI1_TE);
                          ^~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2354:33: error: 'DSI1_TE' undeclared (first 
use in this function); did you mean 'DSI0_TE'?
        tmp_mask = iir & (DSI0_TE | DSI1_TE);
                                    ^~~~~~~
                                    DSI0_TE
   In file included from 
drivers/gpu/drm/i915/display/intel_display_types.h:46:0,
                    from drivers/gpu/drm/i915/i915_irq.c:39:
   drivers/gpu/drm/i915/i915_irq.c: In function 'gen11_dsi_configure_te':
   drivers/gpu/drm/i915/i915_irq.c:2654:19: error: implicit declaration of 
function 'DSI_INTR_MASK_REG'; did you mean 'TSFS_INTR_MASK'? 
[-Werror=implicit-function-declaration]
     tmp =  I915_READ(DSI_INTR_MASK_REG(port));
                      ^
   drivers/gpu/drm/i915/i915_drv.h:1979:45: note: in definition of macro 
'__I915_REG_OP'
     intel_uncore_##op__(&(dev_priv__)->uncore, __VA_ARGS__)
                                                ^~~~~~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2654:9: note: in expansion of macro 
'I915_READ'
     tmp =  I915_READ(DSI_INTR_MASK_REG(port));
            ^~~~~~~~~
   drivers/gpu/drm/i915/i915_drv.h:1981:57: error: incompatible type for 
argument 2 of 'intel_uncore_read'
    #define I915_READ(reg__)  __I915_REG_OP(read, dev_priv, (reg__))
                                                            ^
   drivers/gpu/drm/i915/i915_drv.h:1979:45: note: in definition of macro 
'__I915_REG_OP'
     intel_uncore_##op__(&(dev_priv__)->uncore, __VA_ARGS__)
                                                ^~~~~~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2654:9: note: in expansion of macro 
'I915_READ'
     tmp =  I915_READ(DSI_INTR_MASK_REG(port));
            ^~~~~~~~~
   In file included from drivers/gpu/drm/i915/gt/uc/intel_guc.h:9:0,
                    from drivers/gpu/drm/i915/gt/uc/intel_uc.h:9,
                    from drivers/gpu/drm/i915/gt/intel_gt_types.h:16,
                    from drivers/gpu/drm/i915/i915_drv.h:81,
                    from drivers/gpu/drm/i915/display/intel_display_types.h:46,
                    from drivers/gpu/drm/i915/i915_irq.c:39:
   drivers/gpu/drm/i915/intel_uncore.h:287:22: note: expected 'i915_reg_t {aka 
struct <anonymous>}' but argument is of type 'int'
    static inline u##x__ intel_uncore_##name__(struct intel_uncore *uncore, \
                         ^
   drivers/gpu/drm/i915/intel_uncore.h:302:1: note: in expansion of macro 
'__uncore_read'
    __uncore_read(read, 32, l, true)
    ^~~~~~~~~~~~~
   drivers/gpu/drm/i915/i915_irq.c:2656:11: error: 'DSI_TE_EVENT' undeclared 
(first use in this function); did you mean 'DEFINE_EVENT'?
      tmp &= ~DSI_TE_EVENT;
              ^~~~~~~~~~~~
              DEFINE_EVENT
   In file included from 
drivers/gpu/drm/i915/display/intel_display_types.h:46:0,
                    from drivers/gpu/drm/i915/i915_irq.c:39:
   drivers/gpu/drm/i915/i915_drv.h:1982:65: error: incompatible type for 
argument 2 of 'intel_uncore_write'

vim +/DSI1_TE +2252 drivers/gpu/drm/i915/i915_irq.c

  2232  
  2233  void gen11_dsi_te_interrupt_handler(struct drm_i915_private *dev_priv,
  2234                                      u32 te_trigger)
  2235  {
  2236          enum pipe pipe = INVALID_PIPE;
  2237          enum transcoder dsi_trans;
  2238          enum port port;
  2239          u32 val, tmp;
  2240  
  2241          /*
  2242           * Incase of dual link, TE comes from DSI_1
  2243           * this is to check if dual link is enabled
  2244           */
  2245          val = I915_READ(TRANS_DDI_FUNC_CTL2(TRANSCODER_DSI_0));
  2246          val &= PORT_SYNC_MODE_ENABLE;
  2247  
  2248          /*
  2249           * if dual link is enabled, then read DSI_0
  2250           * transcoder registers
  2251           */
> 2252          port = ((te_trigger & DSI1_TE && val) || (te_trigger & 
> DSI0_TE)) ?
  2253                                                    PORT_A : PORT_B;
  2254          dsi_trans = (port == PORT_A) ? TRANSCODER_DSI_0 : 
TRANSCODER_DSI_1;
  2255  
  2256          /* Check if DSI configured in command mode */
  2257          val = I915_READ(DSI_TRANS_FUNC_CONF(dsi_trans));
  2258          val = (val & OP_MODE_MASK) >> 28;
  2259  
  2260          if (val) {
  2261                  DRM_ERROR("DSI trancoder not configured in command 
mode\n");
  2262                  return;
  2263          }
  2264  
  2265          /* Get PIPE for handling VBLANK event */
  2266          val = I915_READ(TRANS_DDI_FUNC_CTL(dsi_trans));
  2267          switch (val & TRANS_DDI_EDP_INPUT_MASK) {
  2268          case TRANS_DDI_EDP_INPUT_A_ON:
  2269                  pipe = PIPE_A;
  2270                  break;
  2271          case TRANS_DDI_EDP_INPUT_B_ONOFF:
  2272                  pipe = PIPE_B;
  2273                  break;
  2274          case TRANS_DDI_EDP_INPUT_C_ONOFF:
  2275                  pipe = PIPE_C;
  2276                  break;
  2277          default:
  2278                  DRM_ERROR("Invalid PIPE\n");
  2279          }
  2280  
  2281          /* clear TE in dsi IIR */
  2282          port = (te_trigger & DSI1_TE) ? PORT_B : PORT_A;
> 2283          tmp = I915_READ(DSI_INTR_IDENT_REG(port));
  2284          I915_WRITE(DSI_INTR_IDENT_REG(port), tmp);
  2285  
  2286          drm_handle_vblank(&dev_priv->drm, pipe);
  2287  }
  2288  

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

Attachment: .config.gz
Description: application/gzip

_______________________________________________
Intel-gfx mailing list
Intel-gfx@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/intel-gfx

Reply via email to