Re: [PATCH v3 17/23] drm/qxl: use generic fbdev emulation

From: Gerd Hoffmann
Date: Mon Jan 28 2019 - 03:59:54 EST


On Fri, Jan 25, 2019 at 06:25:27PM +0100, Noralf Trønnes wrote:
>
>
> Den 18.01.2019 13.20, skrev Gerd Hoffmann:
> > Switch qxl over to the new generic fbdev emulation.
> >
> > Signed-off-by: Gerd Hoffmann <kraxel@xxxxxxxxxx>
> > ---
> > drivers/gpu/drm/qxl/qxl_display.c | 7 -------
> > drivers/gpu/drm/qxl/qxl_drv.c | 2 ++
> > 2 files changed, 2 insertions(+), 7 deletions(-)
> >
> > diff --git a/drivers/gpu/drm/qxl/qxl_display.c b/drivers/gpu/drm/qxl/qxl_display.c
> > index ef832f98ab..9c751f01e3 100644
> > --- a/drivers/gpu/drm/qxl/qxl_display.c
> > +++ b/drivers/gpu/drm/qxl/qxl_display.c
> > @@ -1221,18 +1221,11 @@ int qxl_modeset_init(struct qxl_device *qdev)
> > qxl_display_read_client_monitors_config(qdev);
> >
> > drm_mode_config_reset(&qdev->ddev);
> > -
> > - /* primary surface must be created by this point, to allow
> > - * issuing command queue commands and having them read by
> > - * spice server. */
> > - qxl_fbdev_init(qdev);
> > return 0;
> > }
> >
> > void qxl_modeset_fini(struct qxl_device *qdev)
> > {
> > - qxl_fbdev_fini(qdev);
> > -
> > qxl_destroy_monitors_object(qdev);
> > drm_mode_config_cleanup(&qdev->ddev);
> > }
> > diff --git a/drivers/gpu/drm/qxl/qxl_drv.c b/drivers/gpu/drm/qxl/qxl_drv.c
> > index 13c8a662f9..3fce7d16df 100644
> > --- a/drivers/gpu/drm/qxl/qxl_drv.c
> > +++ b/drivers/gpu/drm/qxl/qxl_drv.c
> > @@ -93,6 +93,8 @@ qxl_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
> > if (ret)
> > goto modeset_cleanup;
> >
> > + drm_fb_helper_remove_conflicting_pci_framebuffers(pdev, 0, "qxl");
>
> I couldn't find that this was part of old fbdev code, so it would be
> nice to mention it in the commit message.

It actually is, but a bit hidden because it doesn't use a helper you can
easily grep for. Instead sets fb_info->apertures->ranges[0] in
qxlfb_create(), which has the same effect.

cheers,
Gerd