• Daniel Vetter's avatar
    drm/i915: fixup up debugfs rps state handling · 004777cb
    Daniel Vetter authored
    - Take the dev->struct_mutex around access the corresponding state
      (and adjusting the rps hw state).
    - Add an assert to gen6_set_rps to ensure we don't forget about this
      in the future.
    - Don't set up the min/max_freq files if it doesn't apply to the hw.
      And do the same for the gen6+ cache sharing file while at it.
    
    v2: Move the gen6+ checks into the read/write callbacks. Thanks to the
    awesome drm midlayer we can't check that when registering the debugfs
    files, because the driver is not yet fully set up, specifically the
    ->load callback hasn't run yet.
    
    Oh how I despise this disaster ...
    
    v3: Also add a WARN_ON(mutex_is_locked) in set_rps to check the
    locking.
    
    v4: Use mutex_lock_interruptible, suggested by Chris Wilson.
    
    Reviewed-by: Ben Widawsky <ben@bwidawsk.net> (for v2)
    Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
    Reviewed-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    004777cb
i915_debugfs.c 56.2 KB