Commit c04372ea authored by Rodrigo Siqueira's avatar Rodrigo Siqueira Committed by Gustavo Padovan

drm/vkms: Add mode_config initialization

Initialize minimum and maximum width and height of the frame buffers
with default values.
Signed-off-by: default avatarRodrigo Siqueira <rodrigosiqueiramelo@gmail.com>
Reviewed-by: default avatarHaneen Mohammed <hamohammed.sa@gmail.com>
Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
Signed-off-by: default avatarGustavo Padovan <gustavo.padovan@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/75c55df671f24b037f9172700b479f4bb2fa7c92.1526514457.git.rodrigosiqueiramelo@gmail.com
parent 41111ce1
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
#include <drm/drmP.h> #include <drm/drmP.h>
#include <drm/drm_gem.h> #include <drm/drm_gem.h>
#include <drm/drm_crtc_helper.h> #include <drm/drm_crtc_helper.h>
#include <drm/drm_atomic_helper.h>
#include "vkms_drv.h" #include "vkms_drv.h"
#define DRIVER_NAME "vkms" #define DRIVER_NAME "vkms"
...@@ -17,6 +18,12 @@ ...@@ -17,6 +18,12 @@
#define DRIVER_MAJOR 1 #define DRIVER_MAJOR 1
#define DRIVER_MINOR 0 #define DRIVER_MINOR 0
#define XRES_MIN 32
#define YRES_MIN 32
#define XRES_MAX 8192
#define YRES_MAX 8192
static struct vkms_device *vkms_device; static struct vkms_device *vkms_device;
static const struct file_operations vkms_driver_fops = { static const struct file_operations vkms_driver_fops = {
...@@ -67,6 +74,11 @@ static const struct drm_connector_funcs vkms_connector_funcs = { ...@@ -67,6 +74,11 @@ static const struct drm_connector_funcs vkms_connector_funcs = {
.destroy = vkms_connector_destroy, .destroy = vkms_connector_destroy,
}; };
static const struct drm_mode_config_funcs vkms_mode_funcs = {
.atomic_check = drm_atomic_helper_check,
.atomic_commit = drm_atomic_helper_commit,
};
static int __init vkms_init(void) static int __init vkms_init(void)
{ {
int ret; int ret;
...@@ -87,6 +99,11 @@ static int __init vkms_init(void) ...@@ -87,6 +99,11 @@ static int __init vkms_init(void)
} }
drm_mode_config_init(&vkms_device->drm); drm_mode_config_init(&vkms_device->drm);
vkms_device->drm.mode_config.funcs = &vkms_mode_funcs;
vkms_device->drm.mode_config.min_width = XRES_MIN;
vkms_device->drm.mode_config.min_height = YRES_MIN;
vkms_device->drm.mode_config.max_width = XRES_MAX;
vkms_device->drm.mode_config.max_height = YRES_MAX;
ret = drm_connector_init(&vkms_device->drm, &vkms_device->connector, ret = drm_connector_init(&vkms_device->drm, &vkms_device->connector,
&vkms_connector_funcs, &vkms_connector_funcs,
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment