1. 04 5月, 2020 2 次提交
  2. 21 4月, 2020 1 次提交
  3. 20 4月, 2020 1 次提交
  4. 17 4月, 2020 1 次提交
  5. 15 4月, 2020 1 次提交
  6. 08 4月, 2020 1 次提交
    • J
      drm/i915/audio: use struct drm_device based logging · 9282a66c
      Jani Nikula 提交于
      Convert all the DRM_* logging macros to the struct drm_device based
      macros to provide device specific logging.
      
      No functional changes.
      
      Generated using the following semantic patch, originally written by
      Wambui Karuga <wambui.karugax@gmail.com>, with manual fixups on top:
      
      @@
      identifier fn, T;
      @@
      
      fn(...,struct drm_i915_private *T,...) {
      <+...
      (
      -DRM_INFO(
      +drm_info(&T->drm,
      ...)
      |
      -DRM_NOTE(
      +drm_notice(&T->drm,
      ...)
      |
      -DRM_ERROR(
      +drm_err(&T->drm,
      ...)
      |
      -DRM_WARN(
      +drm_warn(&T->drm,
      ...)
      |
      -DRM_DEBUG_DRIVER(
      +drm_dbg(&T->drm,
      ...)
      |
      -DRM_DEBUG_KMS(
      +drm_dbg_kms(&T->drm,
      ...)
      |
      -DRM_DEBUG_ATOMIC(
      +drm_dbg_atomic(&T->drm,
      ...)
      )
      ...+>
      }
      
      @@
      identifier fn, T;
      @@
      
      fn(...) {
      ...
      struct drm_i915_private *T = ...;
      <+...
      (
      -DRM_INFO(
      +drm_info(&T->drm,
      ...)
      |
      -DRM_NOTE(
      +drm_notice(&T->drm,
      ...)
      |
      -DRM_ERROR(
      +drm_err(&T->drm,
      ...)
      |
      -DRM_WARN(
      +drm_warn(&T->drm,
      ...)
      |
      -DRM_DEBUG_DRIVER(
      +drm_dbg(&T->drm,
      ...)
      |
      -DRM_DEBUG_KMS(
      +drm_dbg_kms(&T->drm,
      ...)
      |
      -DRM_DEBUG_ATOMIC(
      +drm_dbg_atomic(&T->drm,
      ...)
      )
      ...+>
      }
      
      Cc: Wambui Karuga <wambui.karugax@gmail.com>
      Reviewed-by: NWambui Karuga <wambui.karugax@gmail.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200402114819.17232-1-jani.nikula@intel.com
      9282a66c
  7. 27 3月, 2020 1 次提交
  8. 12 3月, 2020 1 次提交
  9. 26 2月, 2020 1 次提交
  10. 04 2月, 2020 1 次提交
    • C
      drm/i915/audio: Skip the cdclk modeset if no pipes attached · 08e3ed3a
      Chris Wilson 提交于
      If the display is not driving any pipes, we cannot change the bclk and
      doing so risks chasing NULL pointers:
      
      <6> [278.907105] snd_hda_intel 0000:00:0e.0: DSP detected with PCI class/subclass/prog-if info 0x040100
      <6> [278.909936] snd_hda_intel 0000:00:0e.0: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
      <7> [278.910078] i915 0000:00:02.0: [drm:intel_power_well_enable [i915]] enabling power well 2
      <1> [278.910228] BUG: kernel NULL pointer dereference, address: 0000000000000080
      <1> [278.910243] #PF: supervisor read access in kernel mode
      <1> [278.910251] #PF: error_code(0x0000) - not-present page
      <6> [278.910260] PGD 0 P4D 0
      <4> [278.910267] Oops: 0000 [#1] PREEMPT SMP PTI
      <4> [278.910276] CPU: 0 PID: 5 Comm: kworker/0:0 Tainted: G     U            5.5.0-CI-CI_DRM_7853+ #1
      <4> [278.910289] Hardware name: Intel Corp. Geminilake/GLK RVP2 LP4SD (07), BIOS GELKRVPA.X64.0062.B30.1708222146 08/22/2017
      <4> [278.910312] Workqueue: events azx_probe_work [snd_hda_intel]
      <4> [278.910327] RIP: 0010:__ww_mutex_lock.constprop.15+0x5e/0x1090
      <4> [278.910338] Code: 75 88 be a7 03 00 00 65 48 8b 04 25 28 00 00 00 48 89 45 c8 31 c0 4c 89 c3 e8 5e b3 6d ff 44 8b 3d 2f 24 37 02 45 85 ff 75 0a <4d> 3b 6d 58 0f 85 3f 07 00 00 48 85 db 74 22 49 8b 95 80 00 00 00
      <4> [278.910362] RSP: 0018:ffffc9000008bc10 EFLAGS: 00010246
      <4> [278.910371] RAX: 0000000000000246 RBX: ffffc9000008bd30 RCX: 0000000000000001
      <4> [278.910382] RDX: 0000000000000000 RSI: ffffffff82647c60 RDI: ffff88817b27d848
      <4> [278.910393] RBP: ffffc9000008bcc0 R08: 0000000000000000 R09: 0000000000000001
      <4> [278.910404] R10: ffffc9000008bce0 R11: 0000000000000000 R12: ffffffff8168f0fc
      <4> [278.910414] R13: 0000000000000028 R14: ffffc9000008bd60 R15: 0000000000000000
      <4> [278.910425] FS:  0000000000000000(0000) GS:ffff88817bc00000(0000) knlGS:0000000000000000
      <4> [278.910437] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
      <4> [278.910446] CR2: 0000000000000080 CR3: 00000001650da000 CR4: 0000000000340ef0
      <4> [278.910456] Call Trace:
      <4> [278.910468]  ? mark_held_locks+0x49/0x70
      <4> [278.910479]  ? ww_mutex_lock+0x39/0x70
      <4> [278.910487]  ww_mutex_lock+0x39/0x70
      <4> [278.910497]  drm_modeset_lock+0x6c/0x120
      <4> [278.910575]  glk_force_audio_cdclk+0x7d/0x140 [i915]
      <4> [278.910656]  i915_audio_component_get_power+0xf2/0x110 [i915]
      <4> [278.910673]  snd_hdac_display_power+0x7d/0x120 [snd_hda_core]
      <4> [278.910686]  azx_probe_work+0x88/0x7e0 [snd_hda_intel]
      
      v2: Reorder glk_force_audio_cdclk() parameters to fit in with the norm.
      
      Closes: https://gitlab.freedesktop.org/drm/intel/issues/1095Signed-off-by: NChris Wilson <chris@chris-wilson.co.uk>
      Reviewed-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200203133408.187493-1-chris@chris-wilson.co.uk
      08e3ed3a
  11. 02 2月, 2020 1 次提交
  12. 31 1月, 2020 3 次提交
  13. 27 1月, 2020 1 次提交
  14. 23 1月, 2020 1 次提交
    • W
      drm/i915/audio: convert to struct drm_device logging macros. · 63855149
      Wambui Karuga 提交于
      Converts the printk based logging macros in i915/display/intel_audio.c
      to the struct drm_device based logging macros.
      This transformation was achieved using the following coccinelle script
      that matches the existence of the struct drm_i915_private device:
      
      @rule1@
      identifier fn, T;
      @@
      
      fn(struct drm_i915_private *T,...) {
      <+...
      (
      -DRM_INFO(
      +drm_info(&T->drm,
      ...)
      |
      -DRM_ERROR(
      +drm_err(&T->drm,
      ...)
      |
      -DRM_WARN(
      +drm_warn(&T->drm,
      ...)
      |
      -DRM_DEBUG(
      +drm_dbg(&T->drm,
      ...)
      |
      -DRM_DEBUG_DRIVER(
      +drm_dbg(&T->drm,
      ...)
      |
      -DRM_DEBUG_KMS(
      +drm_dbg_kms(&T->drm,
      ...)
      )
      ...+>
      }
      
      @rule2@
      identifier fn, T;
      @@
      
      fn(...) {
      ...
      struct drm_i915_private *T = ...;
      <+...
      (
      -DRM_INFO(
      +drm_info(&T->drm,
      ...)
      |
      -DRM_ERROR(
      +drm_err(&T->drm,
      ...)
      |
      -DRM_WARN(
      +drm_warn(&T->drm,
      ...)
      |
      -DRM_DEBUG(
      +drm_dbg(&T->drm,
      ...)
      |
      -DRM_DEBUG_KMS(
      +drm_dbg_kms(&T->drm,
      ...)
      |
      -DRM_DEBUG_DRIVER(
      +drm_dbg(&T->drm,
      ...)
      )
      ...+>
      }
      
      Checkpatch warnings were manually fixed.
      Signed-off-by: NWambui Karuga <wambui.karugax@gmail.com>
      Signed-off-by: NJani Nikula <jani.nikula@intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20200121134559.17355-4-wambui.karugax@gmail.com
      63855149
  15. 14 1月, 2020 1 次提交
  16. 07 1月, 2020 2 次提交
  17. 01 11月, 2019 2 次提交
  18. 25 10月, 2019 1 次提交
    • V
      drm/i915: Rework global state locking · 1d5a95b5
      Ville Syrjälä 提交于
      So far we've sort of protected the global state under dev_priv with
      the connection_mutex. I wan to change that so that we can change the
      cdclk even for pure plane updates. To that end let's formalize the
      protection of the global state to follow what I started with the cdclk
      code already (though not entirely properly) such that any crtc mutex
      will suffice as a read lock, and all crtcs mutexes act as the write
      lock.
      
      We'll also pimp intel_atomic_state_clear() to clear the entire global
      state, so that we don't accidentally leak stale information between
      the locking retries.
      
      As a slight optimization we'll only lock the crtc mutexes to protect
      the global state, however if and when we actually have to poke the
      hw (eg. if the actual cdclk changes) we must serialize commits
      across all crtcs so that a parallel nonblocking commit can't get
      ahead of the cdclk reprogamming. We do that by adding all crtcs to
      the state.
      
      TODO: the old global state examined during commit may still
      be a problem since it always looks at the _latest_ swapped state
      in dev_priv. Need to add proper old/new state for that too I think.
      
      v2: Remeber to serialize the commits if necessary
      Signed-off-by: NVille Syrjälä <ville.syrjala@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20191015193035.25982-3-ville.syrjala@linux.intel.comReviewed-by: NStanislav Lisovskiy <stanislav.lisovskiy@intel.com>
      1d5a95b5
  19. 04 10月, 2019 2 次提交
  20. 23 9月, 2019 1 次提交
  21. 02 9月, 2019 1 次提交
  22. 07 8月, 2019 1 次提交
  23. 04 7月, 2019 2 次提交
  24. 17 6月, 2019 1 次提交
  25. 03 5月, 2019 1 次提交
  26. 02 5月, 2019 2 次提交
  27. 08 4月, 2019 1 次提交
  28. 03 4月, 2019 1 次提交
  29. 15 2月, 2019 1 次提交
  30. 08 2月, 2019 1 次提交
    • D
      i915/snd_hdac: I915 subcomponent for the snd_hdac · 8857c7d0
      Daniel Vetter 提交于
      Since we need multiple components for I915 for different purposes
      (Audio & Mei_hdcp), we adopt the subcomponents methodology introduced
      by the previous patch (mentioned below).
      
      	Author: Daniel Vetter <daniel.vetter@ffwll.ch>
      	Date:   Mon Jan 28 17:08:20 2019 +0530
      
      	    components: multiple components for a device
      Reviewed-by: NTakashi Iwai <tiwai@suse.de>
      Signed-off-by-by: Ramalingam C <ramalinagm.c@intel.com> (commit message)
      Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch> (code)
      cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
      cc: Russell King <rmk+kernel@arm.linux.org.uk>
      cc: Rafael J. Wysocki <rafael@kernel.org>
      cc: Jaroslav Kysela <perex@perex.cz>
      cc: Takashi Iwai <tiwai@suse.com>
      cc: Rodrigo Vivi <rodrigo.vivi@intel.com>
      cc: Jani Nikula <jani.nikula@linux.intel.com>
      Link: https://patchwork.freedesktop.org/patch/msgid/20190207232759.14553-4-daniel.vetter@ffwll.ch
      8857c7d0
  31. 15 1月, 2019 1 次提交
  32. 09 1月, 2019 1 次提交