1. 20 2月, 2017 2 次提交
  2. 16 2月, 2017 1 次提交
  3. 15 2月, 2017 2 次提交
  4. 11 2月, 2017 1 次提交
    • L
      drm/i915/debugfs: Add i915_hpd_storm_ctl · 317eaa95
      Lyude 提交于
      This adds a file in i915's debugfs directory that allows userspace to
      manually control HPD storm detection. This is mainly for hotplugging
      tests, where we might want to test HPD storm functionality or disable
      storm detection to speed up hotplugging tests without breaking anything.
      
      Changes since v1:
      - Make HPD storm interval configurable
      - Misc code cleanup
      Signed-off-by: NLyude <lyude@redhat.com>
      Acked-by: NJani Nikula <jani.nikula@linux.intel.com>
      Cc: Tomeu Vizoso <tomeu@tomeuvizoso.net>
      317eaa95
  5. 10 2月, 2017 1 次提交
    • C
      drm/i915/byt: Take powerwell for reading PIPESTAT in debugfs · 4f4631af
      Chris Wilson 提交于
      [12493.693827] WARNING: CPU: 1 PID: 14860 at drivers/gpu/drm/i915/intel_uncore.c:795 __unclaimed_reg_debug+0x5d/0x80 [i915]
      [12493.693868] Unclaimed read from register 0x1f0024
      [12493.693905] Modules linked in: vgem i915 drm_kms_helper drm intel_gtt i2c_algo_bit syscopyarea sysfillrect sysimgblt fb_sys_fops prime_numbers intel_powerclamp crct10dif_pclmul crc32_pclmul crc32c_intel ghash_clmulni_intel cryptd lpc_ich i2c_i801 mfd_core video i2c_designware_platform i2c_designware_core i2c_core button autofs4 sd_mod ahci libahci libata scsi_mod [last unloaded: i915]
      [12493.694039] CPU: 1 PID: 14860 Comm: intel-gpu-overl Tainted: G     U          4.10.0-rc7+ #11
      [12493.694079] Hardware name: GIGABYTE GB-BXBT-1900/MZBAYAB-00, BIOS F8 03/02/2016
      [12493.694121] Call Trace:
      [12493.694169]  dump_stack+0x67/0x9d
      [12493.694235]  __warn+0x117/0x140
      [12493.694288]  warn_slowpath_fmt+0x4f/0x60
      [12493.694344]  ? do_raw_spin_lock+0x116/0x180
      [12493.694533]  ? check_for_unclaimed_mmio+0x98/0xe0 [i915]
      [12493.694727]  __unclaimed_reg_debug+0x5d/0x80 [i915]
      [12493.694923]  fwtable_read32+0x2c5/0x330 [i915]
      [12493.695108]  i915_interrupt_info+0xd52/0xf80 [i915]
      [12493.695302]  ? gen6_write16+0x310/0x310 [i915]
      [12493.695357]  seq_read+0x187/0x710
      [12493.695412]  full_proxy_read+0x75/0xc0
      [12493.695472]  __vfs_read+0x5a/0x220
      [12493.695524]  ? kmem_cache_free+0x6c/0x260
      [12493.695577]  ? putname+0x97/0xa0
      [12493.695629]  ? putname+0x97/0xa0
      [12493.695682]  ? rcu_read_lock_sched_held+0xb8/0xd0
      [12493.695735]  ? rw_verify_area+0x65/0x140
      [12493.695787]  vfs_read+0xd1/0x1f0
      [12493.695840]  SyS_read+0x62/0xc0
      [12493.695893]  entry_SYSCALL_64_fastpath+0x1c/0xb1
      [12493.695943] RIP: 0033:0x7f82dca99ba0
      [12493.695985] RSP: 002b:00007ffc0bdfd4f8 EFLAGS: 00000246 ORIG_RAX: 0000000000000000
      [12493.696031] RAX: ffffffffffffffda RBX: 00007ffc0be005a0 RCX: 00007f82dca99ba0
      [12493.696073] RDX: 0000000000001fff RSI: 00007ffc0bdfd500 RDI: 000000000000001a
      [12493.696115] RBP: ffffffff810fb639 R08: 302f6972642f6775 R09: 00007f82dca0999a
      [12493.696157] R10: 00007f82dcd62760 R11: 0000000000000246 R12: ffff880069a17f98
      [12493.696199] R13: 00007ffc0bdfd428 R14: 0000000000000003 R15: 00007ffc0bdfd428
      [12493.696250]  ? trace_hardirqs_off_caller+0xd9/0x130
      [12493.696300] ---[ end trace 52ccf4d39793cc59 ]---
      
      Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=99761Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Link: http://patchwork.freedesktop.org/patch/msgid/20170210133632.16946-1-chris@chris-wilson.co.ukReviewed-by: NMika Kuoppala <mika.kuoppala@intel.com>
      4f4631af
  6. 09 2月, 2017 1 次提交
  7. 08 2月, 2017 1 次提交
  8. 07 2月, 2017 1 次提交
  9. 27 1月, 2017 1 次提交
  10. 26 1月, 2017 2 次提交
    • M
      drm/i915: Add support for DP Video pattern compliance tests · 611032bf
      Manasi Navare 提交于
      The intel_dp_autotest_video_pattern() function gets invoked through the
      compliance test handler on a HPD short pulse if the test type is
      set to DP_TEST_VIDEO_PATTERN. This performs the DPCD registers
      reads to read the requested test pattern, video pattern resolution,
      frame rate and bits per color value. The results of this analysis
      are handed off to userspace so that the userspace app can set the
      video pattern mode appropriately for the test result/response.
      When the  test is requested with specific BPC value, we read the BPC
      value from the DPCD register. If this BPC value in intel_dp structure
      has a non-zero value and we're on a display port connector, then we use
      the value to calculate the bpp for the pipe. Also in this case if its
      a 18bpp video pattern request, then we force the dithering on pipe to be
      disabled since it causes CRC mismatches.
      
      The compliance_test_active flag is set at the end of the individual
      test handling functions. This is so that the kernel-side operations
      can be completed without the risk of interruption from the userspace
      app that is polling on that flag.
      
      v5:
      * Remove test_result variable
      * Populate the compliance test data at the end of the function (Jani Nikula)
      v4:
      *Return TEST_NAK on read failures and invalid values (Jani Nikula)
      * Address CRC mismatch errors
      v3:
      * Use the updated properly shifted bit definitions (Jani Nikula)
      * Force dithering to be disabled on 18bpp compliance
      test request (Manasi Navare)
      v2:
      * Updated the DPCD Register reads based on proper defines in header (Jani Nikula)
      * Squahsed the patch that forced the pipe bpp to compliance test bpp (Jani Nikula)
      Signed-off-by: NManasi Navare <manasi.d.navare@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/1485274909-17470-1-git-send-email-manasi.d.navare@intel.com
      611032bf
    • M
      drm/i915: Fixes to support DP Compliance EDID tests · b48a5ba9
      Manasi Navare 提交于
      This patch addresses a few issues from the original patch for
      DP Compliance EDID test support submitted by
      Todd Previte<todd.previte@gmail.com>
      
      Video Mode requested in the EDID test handler for the EDID Read
      test (CTS 4.2.2.3) should be set to PREFERRED as per the CTS spec.
      
      v2:
      * Added read debugfs data from test_data.edid if its EDID test (Jani NIkula)
      Signed-off-by: NManasi Navare <manasi.d.navare@intel.com>
      Cc: Jani Nikula <jani.nikula@linux.intel.com>
      Cc: Daniel Vetter <daniel.vetter@intel.com>
      Cc: Ville Syrjala <ville.syrjala@linux.intel.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/1484968170-12467-3-git-send-email-manasi.d.navare@intel.com
      b48a5ba9
  11. 25 1月, 2017 1 次提交
  12. 24 1月, 2017 1 次提交
  13. 19 1月, 2017 1 次提交
  14. 18 1月, 2017 2 次提交
  15. 15 1月, 2017 1 次提交
  16. 14 1月, 2017 1 次提交
  17. 13 1月, 2017 1 次提交
  18. 30 12月, 2016 1 次提交
  19. 24 12月, 2016 1 次提交
  20. 20 12月, 2016 1 次提交
  21. 15 12月, 2016 3 次提交
    • V
      drm: Nuke fb->pixel_format · 438b74a5
      Ville Syrjälä 提交于
      Replace uses of fb->pixel_format with fb->format->format.
      Less duplicated information is a good thing.
      
      Note that coccinelle failed to eliminate the
      "/* fourcc format */" comment from drm_framebuffer.h, so I had
      to do that part manually.
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       drm_helper_mode_fill_fb_struct(...) {
      	...
      -	FB->pixel_format = E;
      	...
       }
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       i9xx_get_initial_plane_config(...) {
      	...
      -	FB->pixel_format = E;
      	...
       }
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       ironlake_get_initial_plane_config(...) {
      	...
      -	FB->pixel_format = E;
      	...
       }
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       skylake_get_initial_plane_config(...) {
      	...
      -	FB->pixel_format = E;
      	...
       }
      
      @@
      struct drm_framebuffer *a;
      struct drm_framebuffer b;
      @@
      (
      - a->pixel_format
      + a->format->format
      |
      - b.pixel_format
      + b.format->format
      )
      
      @@
      struct drm_plane_state *a;
      struct drm_plane_state b;
      @@
      (
      - a->fb->pixel_format
      + a->fb->format->format
      |
      - b.fb->pixel_format
      + b.fb->format->format
      )
      
      @@
      struct drm_crtc *CRTC;
      @@
      (
      - CRTC->primary->fb->pixel_format
      + CRTC->primary->fb->format->format
      |
      - CRTC->primary->state->fb->pixel_format
      + CRTC->primary->state->fb->format->format
      )
      
      @@
      struct drm_mode_set *set;
      @@
      (
      - set->fb->pixel_format
      + set->fb->format->format
      |
      - set->crtc->primary->fb->pixel_format
      + set->crtc->primary->fb->format->format
      )
      
      @@
      @@
       struct drm_framebuffer {
      	 ...
      -	 uint32_t pixel_format;
      	 ...
       };
      
      v2: Fix commit message (Laurent)
          Rebase due to earlier removal of many fb->pixel_format uses,
          including the 'fb->format = drm_format_info(fb->format->format);'
          snafu
      v3: Adjusted the semantic patch a bit and regenerated due to code
          changes
      
      Cc: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
      Signed-off-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v1)
      Reviewed-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Link: http://patchwork.freedesktop.org/patch/msgid/1481751175-18463-1-git-send-email-ville.syrjala@linux.intel.com
      438b74a5
    • V
      drm: Nuke fb->bits_per_pixel · 272725c7
      Ville Syrjälä 提交于
      Replace uses of fb->bits_per_pixel with fb->format->cpp[0]*8.
      Less duplicated information is a good thing.
      
      Note that I didn't put parens around the cpp*8 in the below cocci script,
      on account of not wanting spurious parens all over the place. Instead I
      did the unsafe way, and tried to look over the entire diff to spot if
      any dangerous expressions were produced. I didn't see any.
      
      There are some cases where previously the code did X*bpp/8, so the
      division happened after the multiplication. Those are now just X*cpp
      so the division effectively happens before the multiplication,
      but that is perfectly fine since bpp is always a multiple of 8.
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       drm_helper_mode_fill_fb_struct(...) {
      	...
      -	FB->bits_per_pixel = E;
      	...
       }
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       i9xx_get_initial_plane_config(...) {
      	...
      -	FB->bits_per_pixel = E;
      	...
       }
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       ironlake_get_initial_plane_config(...) {
      	...
      -	FB->bits_per_pixel = E;
      	...
       }
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
       skylake_get_initial_plane_config(...) {
      	...
      -	FB->bits_per_pixel = E;
      	...
       }
      
      @@
      struct drm_framebuffer FB;
      expression E;
      @@
      (
      - E * FB.bits_per_pixel / 8
      + E * FB.format->cpp[0]
      |
      - FB.bits_per_pixel / 8
      + FB.format->cpp[0]
      |
      - E * FB.bits_per_pixel >> 3
      + E * FB.format->cpp[0]
      |
      - FB.bits_per_pixel >> 3
      + FB.format->cpp[0]
      |
      - (FB.bits_per_pixel + 7) / 8
      + FB.format->cpp[0]
      |
      - FB.bits_per_pixel
      + FB.format->cpp[0] * 8
      |
      - FB.format->cpp[0] * 8 != 8
      + FB.format->cpp[0] != 1
      )
      
      @@
      struct drm_framebuffer *FB;
      expression E;
      @@
      (
      - E * FB->bits_per_pixel / 8
      + E * FB->format->cpp[0]
      |
      - FB->bits_per_pixel / 8
      + FB->format->cpp[0]
      |
      - E * FB->bits_per_pixel >> 3
      + E * FB->format->cpp[0]
      |
      - FB->bits_per_pixel >> 3
      + FB->format->cpp[0]
      |
      - (FB->bits_per_pixel + 7) / 8
      + FB->format->cpp[0]
      |
      - FB->bits_per_pixel
      + FB->format->cpp[0] * 8
      |
      - FB->format->cpp[0] * 8 != 8
      + FB->format->cpp[0] != 1
      )
      
      @@
      struct drm_plane_state *state;
      expression E;
      @@
      (
      - E * state->fb->bits_per_pixel / 8
      + E * state->fb->format->cpp[0]
      |
      - state->fb->bits_per_pixel / 8
      + state->fb->format->cpp[0]
      |
      - E * state->fb->bits_per_pixel >> 3
      + E * state->fb->format->cpp[0]
      |
      - state->fb->bits_per_pixel >> 3
      + state->fb->format->cpp[0]
      |
      - (state->fb->bits_per_pixel + 7) / 8
      + state->fb->format->cpp[0]
      |
      - state->fb->bits_per_pixel
      + state->fb->format->cpp[0] * 8
      |
      - state->fb->format->cpp[0] * 8 != 8
      + state->fb->format->cpp[0] != 1
      )
      
      @@
      @@
      - (8 * 8)
      + 8 * 8
      
      @@
      struct drm_framebuffer FB;
      @@
      - (FB.format->cpp[0])
      + FB.format->cpp[0]
      
      @@
      struct drm_framebuffer *FB;
      @@
      - (FB->format->cpp[0])
      + FB->format->cpp[0]
      
      @@
      @@
       struct drm_framebuffer {
      	 ...
      -	 int bits_per_pixel;
      	 ...
       };
      
      v2: Clean up the 'cpp*8 != 8' and '(8 * 8)' cases (Laurent)
      v3: Adjusted the semantic patch a bit and regenerated due to code
          changes
      Signed-off-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Reviewed-by: Alex Deucher <alexander.deucher@amd.com> (v1)
      Link: http://patchwork.freedesktop.org/patch/msgid/1481751140-18352-1-git-send-email-ville.syrjala@linux.intel.com
      272725c7
    • V
      drm: Nuke fb->depth · b00c600e
      Ville Syrjälä 提交于
      Replace uses of fb->depth with fb->format->depth. Less duplicate
      information is a good thing.
      
      @@
      struct drm_framebuffer *fb;
      expression E;
      @@
       drm_helper_mode_fill_fb_struct(...) {
      	...
      -	fb->depth = E;
      	...
       }
      
      @@
      struct nouveau_framebuffer *fb;
      @@
      - fb->base.depth
      + fb->base.format->depth
      
      @@
      struct drm_framebuffer fb;
      @@
      - fb.depth
      + fb.format->depth
      
      @@
      struct drm_framebuffer *fb;
      @@
      - fb->depth
      + fb->format->depth
      
      @@
      struct drm_framebuffer fb;
      @@
      - (fb.format->depth)
      + fb.format->depth
      
      @@
      struct drm_framebuffer *fb;
      @@
      - (fb->format->depth)
      + fb->format->depth
      
      @@
      @@
       struct drm_framebuffer {
      	 ...
      -	 unsigned int depth;
      	 ...
       };
      
      v2: Drop the vmw stuff (Daniel)
          Rerun spatch due to code changes
      Signed-off-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Reviewed-by: NLaurent Pinchart <laurent.pinchart@ideasonboard.com>
      Reviewed-by: NAlex Deucher <alexander.deucher@amd.com>
      Reviewed-by: NDaniel Vetter <daniel.vetter@ffwll.ch>
      Link: http://patchwork.freedesktop.org/patch/msgid/1481751095-18249-1-git-send-email-ville.syrjala@linux.intel.com
      b00c600e
  22. 13 12月, 2016 2 次提交
  23. 10 12月, 2016 1 次提交
  24. 07 12月, 2016 3 次提交
  25. 05 12月, 2016 2 次提交
  26. 02 12月, 2016 2 次提交
  27. 29 11月, 2016 3 次提交