[PATCH 01/34] drm/nouveau: create pci device once

Danilo Krummrich dakr at redhat.com
Tue Jun 4 10:11:45 UTC 2024


On 5/27/24 16:19, Ben Skeggs wrote:
> HW isn't touched anymore (aside from detection) until the first
> nvif_device has been allocated, so we no longer need a separate
> probe-only step before kicking efifb (etc) off the HW.
> 
> Signed-off-by: Ben Skeggs <bskeggs at nvidia.com>
> ---
>   drivers/gpu/drm/nouveau/nouveau_drm.c | 11 ++---------
>   1 file changed, 2 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
> index a58c31089613..c37798b507ea 100644
> --- a/drivers/gpu/drm/nouveau/nouveau_drm.c
> +++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
> @@ -803,23 +803,16 @@ static int nouveau_drm_probe(struct pci_dev *pdev,
>   	/* We need to check that the chipset is supported before booting
>   	 * fbdev off the hardware, as there's no way to put it back.
>   	 */
> -	ret = nvkm_device_pci_new(pdev, nouveau_config, "error",
> -				  true, false, 0, &device);
> +	ret = nvkm_device_pci_new(pdev, nouveau_config, nouveau_debug,
> +				  true, true, ~0ULL, &device);

Looks like we don't need the 'detect' and 'mmio' arguments (anymore),
can we remove them?

>   	if (ret)
>   		return ret;
>   
> -	nvkm_device_del(&device);
> -
>   	/* Remove conflicting drivers (vesafb, efifb etc). */
>   	ret = drm_aperture_remove_conflicting_pci_framebuffers(pdev, &driver_pci);
>   	if (ret)
>   		return ret;
>   
> -	ret = nvkm_device_pci_new(pdev, nouveau_config, nouveau_debug,
> -				  true, true, ~0ULL, &device);
> -	if (ret)
> -		return ret;
> -
>   	pci_set_master(pdev);
>   
>   	if (nouveau_atomic)



More information about the Nouveau mailing list