summaryrefslogtreecommitdiffstats
path: root/drivers/staging/vboxvideo/vbox_drv.c
diff options
context:
space:
mode:
authorHans de Goede2018-09-29 14:18:25 +0200
committerGreg Kroah-Hartman2018-09-29 14:31:33 +0200
commite2c3860ba27d21f991bf9b81d64589f7c9e087c1 (patch)
tree41039ade5a01714d6642bc8cdbda6b1fe164b703 /drivers/staging/vboxvideo/vbox_drv.c
parentstaging: vboxvideo: Drop unnecessary drm_connector_helper_funcs callbacks (diff)
downloadkernel-qcow2-linux-e2c3860ba27d21f991bf9b81d64589f7c9e087c1.tar.gz
kernel-qcow2-linux-e2c3860ba27d21f991bf9b81d64589f7c9e087c1.tar.xz
kernel-qcow2-linux-e2c3860ba27d21f991bf9b81d64589f7c9e087c1.zip
staging: vboxvideo: Use more drm_fb_helper functions
Store fbhelper and afb struct directly in vbox_private and use drm_fb_helper_fbdev_setup to replace vbox_fbdev_init, note we cannot use drm_fb_helper_fbdev_teardown since we use a private framebuffer for the fbdev. And replace vbox_driver_lastclose with drm_fb_helper_lastclose. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/staging/vboxvideo/vbox_drv.c')
-rw-r--r--drivers/staging/vboxvideo/vbox_drv.c10
1 files changed, 8 insertions, 2 deletions
diff --git a/drivers/staging/vboxvideo/vbox_drv.c b/drivers/staging/vboxvideo/vbox_drv.c
index c3e14107da0d..257030460fb6 100644
--- a/drivers/staging/vboxvideo/vbox_drv.c
+++ b/drivers/staging/vboxvideo/vbox_drv.c
@@ -49,6 +49,10 @@ static const struct pci_device_id pciidlist[] = {
};
MODULE_DEVICE_TABLE(pci, pciidlist);
+static struct drm_fb_helper_funcs vbox_fb_helper_funcs = {
+ .fb_probe = vboxfb_create,
+};
+
static int vbox_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
{
struct vbox_private *vbox;
@@ -92,7 +96,9 @@ static int vbox_pci_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
if (ret)
goto err_mode_fini;
- ret = vbox_fbdev_init(vbox);
+ ret = drm_fb_helper_fbdev_setup(&vbox->ddev, &vbox->fb_helper,
+ &vbox_fb_helper_funcs, 32,
+ vbox->num_crtcs);
if (ret)
goto err_irq_fini;
@@ -257,7 +263,7 @@ static struct drm_driver driver = {
DRIVER_PRIME | DRIVER_ATOMIC,
.dev_priv_size = 0,
- .lastclose = vbox_driver_lastclose,
+ .lastclose = drm_fb_helper_lastclose,
.master_set = vbox_master_set,
.master_drop = vbox_master_drop,