All of lore.kernel.org
 help / color / mirror / Atom feed
From: Thomas Zimmermann <tzimmermann@suse.de>
To: airlied@linux.ie, daniel@ffwll.ch, jani.nikula@linux.intel.com,
	joonas.lahtinen@linux.intel.com, sroland@vmware.com,
	zackr@vmware.com
Cc: linux-graphics-maintainer@vmware.com,
	intel-gfx@lists.freedesktop.org,
	intel-gvt-dev@lists.freedesktop.org,
	Thomas Zimmermann <tzimmermann@suse.de>,
	dri-devel@lists.freedesktop.org
Subject: [PATCH v4 0/6] drm: Move struct drm_device.pdev to legacy
Date: Mon, 18 Jan 2021 14:14:14 +0100	[thread overview]
Message-ID: <20210118131420.15874-1-tzimmermann@suse.de> (raw)

I merged more patches into drm-misc-next. I'm mostly sending out v4 of
this patchset to split the final patch into the core changes and the
patch for moving pdev behind CONFIG_DRM_LEGACY. The former are required
to fix a reported bug. [1] There's also a fix to vmwgfx.

The pdev field in struct drm_device points to a PCI device structure and
goes back to UMS-only days when all DRM drivers were for PCI devices.
Meanwhile we also support USB, SPI and platform devices. Each of those
uses the generic device stored in struct drm_device.dev.

To reduce duplication and remove the special case of PCI, this patchset
converts all modesetting drivers from pdev to dev and makes pdev a field
for legacy UMS drivers.

For PCI devices, the pointer in struct drm_device.dev can be upcasted to
struct pci_device; or tested for PCI with dev_is_pci(). In several places
the code can use the dev field directly.

After converting all drivers and the DRM core, the pdev fields becomes
only relevant for legacy drivers. In a later patchset, we may want to
convert these as well and remove pdev entirely.

v4:
	* merged several patches
	* moved core changes into separate patch
	* vmwgfx build fix
v3:
	* merged several patches
	* fix one pdev reference in nouveau (Jeremy)
	* rebases
v2:
	* move whitespace fixes into separate patches (Alex, Sam)
	* move i915 gt/ and gvt/ changes into separate patches (Joonas)

[1] https://lore.kernel.org/dri-devel/7851c78c-8c57-3c84-cd49-a72703095a5d@suse.de/

Thomas Zimmermann (6):
  drm: Upcast struct drm_device.dev to struct pci_device; replace pdev
  drm/i915: Remove references to struct drm_device.pdev
  drm/i915/gt: Remove references to struct drm_device.pdev
  drm/i915/gvt: Remove references to struct drm_device.pdev
  drm/vmwgfx: Remove reference to struct drm_device.pdev
  drm: Move struct drm_device.pdev to legacy section

 drivers/gpu/drm/drm_agpsupport.c              |  9 ++++---
 drivers/gpu/drm/drm_bufs.c                    |  4 +--
 drivers/gpu/drm/drm_edid.c                    |  7 ++++-
 drivers/gpu/drm/drm_irq.c                     | 12 +++++----
 drivers/gpu/drm/drm_pci.c                     | 26 +++++++++++--------
 drivers/gpu/drm/drm_vm.c                      |  2 +-
 drivers/gpu/drm/i915/display/intel_bios.c     |  2 +-
 drivers/gpu/drm/i915/display/intel_cdclk.c    | 14 +++++-----
 drivers/gpu/drm/i915/display/intel_csr.c      |  2 +-
 drivers/gpu/drm/i915/display/intel_dsi_vbt.c  |  2 +-
 drivers/gpu/drm/i915/display/intel_fbdev.c    |  2 +-
 drivers/gpu/drm/i915/display/intel_gmbus.c    |  2 +-
 .../gpu/drm/i915/display/intel_lpe_audio.c    |  5 ++--
 drivers/gpu/drm/i915/display/intel_opregion.c |  6 ++---
 drivers/gpu/drm/i915/display/intel_overlay.c  |  2 +-
 drivers/gpu/drm/i915/display/intel_panel.c    |  4 +--
 drivers/gpu/drm/i915/display/intel_quirks.c   |  2 +-
 drivers/gpu/drm/i915/display/intel_sdvo.c     |  2 +-
 drivers/gpu/drm/i915/display/intel_vga.c      |  8 +++---
 drivers/gpu/drm/i915/gem/i915_gem_phys.c      |  6 ++---
 drivers/gpu/drm/i915/gem/i915_gem_shmem.c     |  2 +-
 drivers/gpu/drm/i915/gt/intel_engine_cs.c     |  2 +-
 drivers/gpu/drm/i915/gt/intel_ggtt.c          | 10 +++----
 drivers/gpu/drm/i915/gt/intel_ppgtt.c         |  2 +-
 drivers/gpu/drm/i915/gt/intel_rc6.c           |  4 +--
 drivers/gpu/drm/i915/gt/intel_region_lmem.c   |  8 +++---
 drivers/gpu/drm/i915/gt/intel_reset.c         |  6 ++---
 drivers/gpu/drm/i915/gvt/cfg_space.c          |  5 ++--
 drivers/gpu/drm/i915/gvt/firmware.c           | 10 +++----
 drivers/gpu/drm/i915/gvt/gtt.c                | 12 ++++-----
 drivers/gpu/drm/i915/gvt/gvt.c                |  6 ++---
 drivers/gpu/drm/i915/gvt/kvmgt.c              |  4 +--
 drivers/gpu/drm/i915/i915_debugfs.c           |  2 +-
 drivers/gpu/drm/i915/i915_drv.c               | 20 +++++++-------
 drivers/gpu/drm/i915/i915_drv.h               |  2 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c           |  5 ++--
 drivers/gpu/drm/i915/i915_getparam.c          |  5 ++--
 drivers/gpu/drm/i915/i915_gpu_error.c         |  2 +-
 drivers/gpu/drm/i915/i915_irq.c               |  6 ++---
 drivers/gpu/drm/i915/i915_pmu.c               |  2 +-
 drivers/gpu/drm/i915/i915_suspend.c           |  4 +--
 drivers/gpu/drm/i915/i915_switcheroo.c        |  4 +--
 drivers/gpu/drm/i915/i915_vgpu.c              |  2 +-
 drivers/gpu/drm/i915/intel_device_info.c      |  2 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c       |  2 +-
 drivers/gpu/drm/i915/intel_uncore.c           |  4 +--
 .../gpu/drm/i915/selftests/mock_gem_device.c  |  1 -
 drivers/gpu/drm/i915/selftests/mock_gtt.c     |  2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c           |  1 -
 include/drm/drm_device.h                      |  6 ++---
 50 files changed, 137 insertions(+), 125 deletions(-)

--
2.29.2

_______________________________________________
dri-devel mailing list
dri-devel@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/dri-devel

WARNING: multiple messages have this Message-ID (diff)
From: Thomas Zimmermann <tzimmermann@suse.de>
To: airlied@linux.ie, daniel@ffwll.ch, jani.nikula@linux.intel.com,
	joonas.lahtinen@linux.intel.com, sroland@vmware.com,
	zackr@vmware.com
Cc: linux-graphics-maintainer@vmware.com,
	intel-gfx@lists.freedesktop.org,
	intel-gvt-dev@lists.freedesktop.org,
	Thomas Zimmermann <tzimmermann@suse.de>,
	dri-devel@lists.freedesktop.org
Subject: [Intel-gfx] [PATCH v4 0/6] drm: Move struct drm_device.pdev to legacy
Date: Mon, 18 Jan 2021 14:14:14 +0100	[thread overview]
Message-ID: <20210118131420.15874-1-tzimmermann@suse.de> (raw)

I merged more patches into drm-misc-next. I'm mostly sending out v4 of
this patchset to split the final patch into the core changes and the
patch for moving pdev behind CONFIG_DRM_LEGACY. The former are required
to fix a reported bug. [1] There's also a fix to vmwgfx.

The pdev field in struct drm_device points to a PCI device structure and
goes back to UMS-only days when all DRM drivers were for PCI devices.
Meanwhile we also support USB, SPI and platform devices. Each of those
uses the generic device stored in struct drm_device.dev.

To reduce duplication and remove the special case of PCI, this patchset
converts all modesetting drivers from pdev to dev and makes pdev a field
for legacy UMS drivers.

For PCI devices, the pointer in struct drm_device.dev can be upcasted to
struct pci_device; or tested for PCI with dev_is_pci(). In several places
the code can use the dev field directly.

After converting all drivers and the DRM core, the pdev fields becomes
only relevant for legacy drivers. In a later patchset, we may want to
convert these as well and remove pdev entirely.

v4:
	* merged several patches
	* moved core changes into separate patch
	* vmwgfx build fix
v3:
	* merged several patches
	* fix one pdev reference in nouveau (Jeremy)
	* rebases
v2:
	* move whitespace fixes into separate patches (Alex, Sam)
	* move i915 gt/ and gvt/ changes into separate patches (Joonas)

[1] https://lore.kernel.org/dri-devel/7851c78c-8c57-3c84-cd49-a72703095a5d@suse.de/

Thomas Zimmermann (6):
  drm: Upcast struct drm_device.dev to struct pci_device; replace pdev
  drm/i915: Remove references to struct drm_device.pdev
  drm/i915/gt: Remove references to struct drm_device.pdev
  drm/i915/gvt: Remove references to struct drm_device.pdev
  drm/vmwgfx: Remove reference to struct drm_device.pdev
  drm: Move struct drm_device.pdev to legacy section

 drivers/gpu/drm/drm_agpsupport.c              |  9 ++++---
 drivers/gpu/drm/drm_bufs.c                    |  4 +--
 drivers/gpu/drm/drm_edid.c                    |  7 ++++-
 drivers/gpu/drm/drm_irq.c                     | 12 +++++----
 drivers/gpu/drm/drm_pci.c                     | 26 +++++++++++--------
 drivers/gpu/drm/drm_vm.c                      |  2 +-
 drivers/gpu/drm/i915/display/intel_bios.c     |  2 +-
 drivers/gpu/drm/i915/display/intel_cdclk.c    | 14 +++++-----
 drivers/gpu/drm/i915/display/intel_csr.c      |  2 +-
 drivers/gpu/drm/i915/display/intel_dsi_vbt.c  |  2 +-
 drivers/gpu/drm/i915/display/intel_fbdev.c    |  2 +-
 drivers/gpu/drm/i915/display/intel_gmbus.c    |  2 +-
 .../gpu/drm/i915/display/intel_lpe_audio.c    |  5 ++--
 drivers/gpu/drm/i915/display/intel_opregion.c |  6 ++---
 drivers/gpu/drm/i915/display/intel_overlay.c  |  2 +-
 drivers/gpu/drm/i915/display/intel_panel.c    |  4 +--
 drivers/gpu/drm/i915/display/intel_quirks.c   |  2 +-
 drivers/gpu/drm/i915/display/intel_sdvo.c     |  2 +-
 drivers/gpu/drm/i915/display/intel_vga.c      |  8 +++---
 drivers/gpu/drm/i915/gem/i915_gem_phys.c      |  6 ++---
 drivers/gpu/drm/i915/gem/i915_gem_shmem.c     |  2 +-
 drivers/gpu/drm/i915/gt/intel_engine_cs.c     |  2 +-
 drivers/gpu/drm/i915/gt/intel_ggtt.c          | 10 +++----
 drivers/gpu/drm/i915/gt/intel_ppgtt.c         |  2 +-
 drivers/gpu/drm/i915/gt/intel_rc6.c           |  4 +--
 drivers/gpu/drm/i915/gt/intel_region_lmem.c   |  8 +++---
 drivers/gpu/drm/i915/gt/intel_reset.c         |  6 ++---
 drivers/gpu/drm/i915/gvt/cfg_space.c          |  5 ++--
 drivers/gpu/drm/i915/gvt/firmware.c           | 10 +++----
 drivers/gpu/drm/i915/gvt/gtt.c                | 12 ++++-----
 drivers/gpu/drm/i915/gvt/gvt.c                |  6 ++---
 drivers/gpu/drm/i915/gvt/kvmgt.c              |  4 +--
 drivers/gpu/drm/i915/i915_debugfs.c           |  2 +-
 drivers/gpu/drm/i915/i915_drv.c               | 20 +++++++-------
 drivers/gpu/drm/i915/i915_drv.h               |  2 +-
 drivers/gpu/drm/i915/i915_gem_gtt.c           |  5 ++--
 drivers/gpu/drm/i915/i915_getparam.c          |  5 ++--
 drivers/gpu/drm/i915/i915_gpu_error.c         |  2 +-
 drivers/gpu/drm/i915/i915_irq.c               |  6 ++---
 drivers/gpu/drm/i915/i915_pmu.c               |  2 +-
 drivers/gpu/drm/i915/i915_suspend.c           |  4 +--
 drivers/gpu/drm/i915/i915_switcheroo.c        |  4 +--
 drivers/gpu/drm/i915/i915_vgpu.c              |  2 +-
 drivers/gpu/drm/i915/intel_device_info.c      |  2 +-
 drivers/gpu/drm/i915/intel_runtime_pm.c       |  2 +-
 drivers/gpu/drm/i915/intel_uncore.c           |  4 +--
 .../gpu/drm/i915/selftests/mock_gem_device.c  |  1 -
 drivers/gpu/drm/i915/selftests/mock_gtt.c     |  2 +-
 drivers/gpu/drm/vmwgfx/vmwgfx_drv.c           |  1 -
 include/drm/drm_device.h                      |  6 ++---
 50 files changed, 137 insertions(+), 125 deletions(-)

--
2.29.2

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

             reply	other threads:[~2021-01-18 13:14 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-01-18 13:14 Thomas Zimmermann [this message]
2021-01-18 13:14 ` [Intel-gfx] [PATCH v4 0/6] drm: Move struct drm_device.pdev to legacy Thomas Zimmermann
2021-01-18 13:14 ` [PATCH v4 1/6] drm: Upcast struct drm_device.dev to struct pci_device; replace pdev Thomas Zimmermann
2021-01-18 13:14   ` [Intel-gfx] " Thomas Zimmermann
2021-01-18 13:30   ` Daniel Vetter
2021-01-18 13:30     ` [Intel-gfx] " Daniel Vetter
2021-01-18 13:14 ` [PATCH v4 2/6] drm/i915: Remove references to struct drm_device.pdev Thomas Zimmermann
2021-01-18 13:14   ` [Intel-gfx] " Thomas Zimmermann
2021-01-18 13:14 ` [PATCH v4 3/6] drm/i915/gt: " Thomas Zimmermann
2021-01-18 13:14   ` [Intel-gfx] " Thomas Zimmermann
2021-01-18 13:38   ` Chris Wilson
2021-01-18 13:38     ` [Intel-gfx] " Chris Wilson
2021-01-18 14:51     ` Thomas Zimmermann
2021-01-18 14:51       ` [Intel-gfx] " Thomas Zimmermann
2021-01-18 13:14 ` [PATCH v4 4/6] drm/i915/gvt: " Thomas Zimmermann
2021-01-18 13:14   ` [Intel-gfx] " Thomas Zimmermann
2021-01-18 13:14 ` [PATCH v4 5/6] drm/vmwgfx: Remove reference " Thomas Zimmermann
2021-01-18 13:14   ` [Intel-gfx] " Thomas Zimmermann
2021-01-18 19:33   ` Zack Rusin
2021-01-18 19:33     ` [Intel-gfx] " Zack Rusin
2021-01-18 13:14 ` [PATCH v4 6/6] drm: Move struct drm_device.pdev to legacy section Thomas Zimmermann
2021-01-18 13:14   ` [Intel-gfx] " Thomas Zimmermann
2021-01-18 18:25 ` [Intel-gfx] ✓ Fi.CI.BAT: success for drm: Move struct drm_device.pdev to legacy (rev4) Patchwork
2021-01-19  0:06 ` [Intel-gfx] ✗ Fi.CI.IGT: failure " Patchwork
2021-01-19 14:51 ` [PATCH v4 0/6] drm: Move struct drm_device.pdev to legacy Thomas Zimmermann
2021-01-19 14:51   ` [Intel-gfx] " Thomas Zimmermann

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20210118131420.15874-1-tzimmermann@suse.de \
    --to=tzimmermann@suse.de \
    --cc=airlied@linux.ie \
    --cc=daniel@ffwll.ch \
    --cc=dri-devel@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=intel-gvt-dev@lists.freedesktop.org \
    --cc=jani.nikula@linux.intel.com \
    --cc=joonas.lahtinen@linux.intel.com \
    --cc=linux-graphics-maintainer@vmware.com \
    --cc=sroland@vmware.com \
    --cc=zackr@vmware.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.