[PATCH 00/15] drm: Move struct drm_device.pdev to legacy
Sam Ravnborg
sam at ravnborg.org
Tue Nov 24 21:49:41 UTC 2020
Hi Thomas.
Nice clean-up series - quite an effort to move one member to deprecated!
I have read through most of the patches. I left a few notes in my
replies but nothing buggy. Just nitpicks.
On Tue, Nov 24, 2020 at 12:38:09PM +0100, Thomas Zimmermann wrote:
> The pdev field in struct drm_device points to a PCI device structure and
> goes back to UMS-only days when all DRM drivers where 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 duplications 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.
>
> The patchset touches many files, but the individual changes are mostly
> trivial. I suggest to merge each driver's patch through the respective
> tree and later the rest through drm-misc-next.
>
> Thomas Zimmermann (15):
> drm/amdgpu: Remove references to struct drm_device.pdev
> drm/ast: Remove references to struct drm_device.pdev
> drm/bochs: Remove references to struct drm_device.pdev
> drm/cirrus: Remove references to struct drm_device.pdev
> drm/gma500: Remove references to struct drm_device.pdev
> drm/hibmc: Remove references to struct drm_device.pdev
> drm/mgag200: Remove references to struct drm_device.pdev
> drm/qxl: Remove references to struct drm_device.pdev
> drm/vboxvideo: Remove references to struct drm_device.pdev
> drm/virtgpu: Remove references to struct drm_device.pdev
> drm/vmwgfx: Remove references to struct drm_device.pdev
> drm: Upcast struct drm_device.dev to struct pci_device; replace pdev
All above are:
Acked-by: Sam Ravnborg <sam at ravnborg.org>
> drm/nouveau: Remove references to struct drm_device.pdev
I lost my confidence in my reading of this code.
> drm/i915: Remove references to struct drm_device.pdev
> drm/radeon: Remove references to struct drm_device.pdev
I did not look at these at all. I hope someone else find time to do so.
Sam
More information about the dri-devel
mailing list