On Tue, 27 Apr 2021, Thomas Zimmermann tzimmermann@suse.de wrote:
V7 of the patchset fixes some bitrot in the intel driver.
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.
On the series,
Reviewed-by: Jani Nikula jani.nikula@intel.com
How should we merge these?
v7:
- fix instances of pdev that have benn added under i915/
v6:
- also remove assignment in i915/selftests in later patch (Chris)
v5:
- remove assignment in later patch (Chris)
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)
Thomas Zimmermann (4): drm/i915/gt: Remove reference to struct drm_device.pdev drm/i915: Remove reference to struct drm_device.pdev drm/i915: Don't assign to struct drm_device.pdev drm: Move struct drm_device.pdev to legacy section
drivers/gpu/drm/i915/gt/intel_region_lmem.c | 2 +- drivers/gpu/drm/i915/i915_drv.c | 1 - drivers/gpu/drm/i915/intel_runtime_pm.h | 2 +- drivers/gpu/drm/i915/selftests/mock_gem_device.c | 1 - include/drm/drm_device.h | 6 +++--- 5 files changed, 5 insertions(+), 7 deletions(-)
-- 2.31.1