mirror of
https://github.com/torvalds/linux.git
synced 2025-12-07 20:06:24 +00:00
drm/i915/switcheroo: pass display to HAS_DISPLAY()
Underneath, HAS_DISPLAY() really expects a struct intel_display. Switch to it in preparation for removing the transitional __to_intel_display() macro. Reviewed-by: Gustavo Sousa <gustavo.sousa@intel.com> Link: https://lore.kernel.org/r/c9828991eb8870c45271141bf0912880a3a65c44.1754499175.git.jani.nikula@intel.com Signed-off-by: Jani Nikula <jani.nikula@intel.com>
This commit is contained in:
@@ -15,13 +15,14 @@ static void i915_switcheroo_set_state(struct pci_dev *pdev,
|
||||
enum vga_switcheroo_state state)
|
||||
{
|
||||
struct drm_i915_private *i915 = pdev_to_i915(pdev);
|
||||
struct intel_display *display = i915->display;
|
||||
pm_message_t pmm = { .event = PM_EVENT_SUSPEND };
|
||||
|
||||
if (!i915) {
|
||||
dev_err(&pdev->dev, "DRM not initialized, aborting switch.\n");
|
||||
return;
|
||||
}
|
||||
if (!HAS_DISPLAY(i915)) {
|
||||
if (!HAS_DISPLAY(display)) {
|
||||
dev_err(&pdev->dev, "Device state not initialized, aborting switch.\n");
|
||||
return;
|
||||
}
|
||||
@@ -44,13 +45,14 @@ static void i915_switcheroo_set_state(struct pci_dev *pdev,
|
||||
static bool i915_switcheroo_can_switch(struct pci_dev *pdev)
|
||||
{
|
||||
struct drm_i915_private *i915 = pdev_to_i915(pdev);
|
||||
struct intel_display *display = i915->display;
|
||||
|
||||
/*
|
||||
* FIXME: open_count is protected by drm_global_mutex but that would lead to
|
||||
* locking inversion with the driver load path. And the access here is
|
||||
* completely racy anyway. So don't bother with locking for now.
|
||||
*/
|
||||
return i915 && HAS_DISPLAY(i915) && atomic_read(&i915->drm.open_count) == 0;
|
||||
return i915 && HAS_DISPLAY(display) && atomic_read(&i915->drm.open_count) == 0;
|
||||
}
|
||||
|
||||
static const struct vga_switcheroo_client_ops i915_switcheroo_ops = {
|
||||
|
||||
Reference in New Issue
Block a user