[PATCH v4 1/2] drm: move i915_kick_out_vgacon to vgaarb
Gerd Hoffmann
kraxel at redhat.com
Mon Feb 25 08:34:09 UTC 2019
On Fri, Feb 22, 2019 at 06:20:11PM +0100, Daniel Vetter wrote:
> On Fri, Feb 22, 2019 at 12:03 PM Gerd Hoffmann <kraxel at redhat.com> wrote:
> >
> > Hi,
> >
> > > > - /*
> > > > - * WARNING: Apparently we must kick fbdev drivers before vgacon,
> > > > - * otherwise the vga fbdev driver falls over.
> > > > - */
> > > > ret = i915_kick_out_firmware_fb(dev_priv);
> > >
> > > This needs to be replaced with a call to
> > > drm_fb_helper_remove_conflicting_pci_framebuffers, because the above
> > > wrapper hasn't been converted yet. Otherwise you end up removing the
> > > vgacon unbind from i915.
> >
> > Ah, little but important difference I didn't notice on the first look.
> > That wrapper calls the non-pci version. But seems it isn't that easy
> > to switch over because the framebuffer is in stolen memory instead of a
> > pci bar ...
>
> stolen memory is where the fb physically resides. the pci bar is how
> you access it (as long as you take all the pci bars). From a quick
> look i915 and pci version of remove_conflicting_fb matched.
Well, it is
ap->ranges[0].base = ggtt->gmadr.start;
ap->ranges[0].size = ggtt->mappable_end;
vs.
ap->ranges[0].base = pci_resource_start(pdev, res_id);
ap->ranges[0].size = pci_resource_len(pdev, res_id);
So not obvious that they are the same. At least to me, maybe it is a
different story for someone knowing the i915 driver better.
thanks,
Gerd
More information about the dri-devel
mailing list