Re: [PATCH v10 03/11] drm/etnaviv: Add dedicated functions to create and destroy platform device

From: Lucas Stach
Date: Wed Jun 21 2023 - 10:01:22 EST


Am Mittwoch, dem 21.06.2023 um 21:31 +0800 schrieb Sui Jingfeng:
> On 2023/6/21 18:23, Lucas Stach wrote:
> > > While back to the question you ask, I want etnaviv_create_platform_device() to be generic,
> > >
> > > can be used by multiple place for multiple purpose.
> > >
> > > I have successfully copy this to a another drm driver by simply renaming.
> > >
> > > The body of the function itself does not need to change.
> > But it isn't shared,
>
> This can be shared for drm/etnaviv in the future,
>
> currently, we just need an opportunity to use this function.
>
I'm not convinced, yet.

> I want to create a dummy platform device,
>
> let this dummy platform be bound to the single PCI GPU master.
>
>
> etnaviv_create_platform_device("dummy", &dummy_device);
>
>
> 1) To verify the component code path on PCI case.
>
My favorite option would be to just always use the component path even
when the GPU is on a PCI device to keep both paths mostly aligned. One
could easily image both a 3D and a 2D core being made available though
the same PCI device.

> 2) Possibly for create a device for some other tiny hardware logic
> come with the platform
>
Do you have something in mind here? Until now I assumed that only the
GPU core is behind the PCI abstraction. Is there something else sharing
the MMIO space?

Regards,
Lucas

> 3) Revival component_compare_dev_name() function.
>
> > in this compilation unit this function is specific
> > to the etnaviv driver and I don't see why we shouldn't have etnaviv
> > specifics in there if it makes the code of this driver easier to
> > follow.
>