[openchrome-devel] drm-openchrome: Branch 'drm-next-5.13' - 2 commits - drivers/gpu/drm

Kevin Brace kevinbrace at kemper.freedesktop.org
Sun Apr 4 00:20:23 UTC 2021


 drivers/gpu/drm/openchrome/openchrome_drv.c |   31 ++++++++++++++++++++++++++--
 drivers/gpu/drm/openchrome/openchrome_drv.h |    4 +--
 2 files changed, 31 insertions(+), 4 deletions(-)

New commits:
commit db2ffb68e14680f8e319d4b32a035248b6529b9e
Author: Kevin Brace <kevinbrace at gmx.com>
Date:   Sat Apr 3 17:15:16 2021 -0700

    drm/openchrome: Version bumped to 3.4.8
    
    This version adds modeset kernel parameter.  Now, OpenChrome
    DRM is by default disabled.  To activate OpenChrome DRM, add
    openchrome.modeset=1 to the kernel command line.
    
    Signed-off-by: Kevin Brace <kevinbrace at gmx.com>

diff --git a/drivers/gpu/drm/openchrome/openchrome_drv.h b/drivers/gpu/drm/openchrome/openchrome_drv.h
index a36cb5939968..3327cf3f3005 100644
--- a/drivers/gpu/drm/openchrome/openchrome_drv.h
+++ b/drivers/gpu/drm/openchrome/openchrome_drv.h
@@ -61,10 +61,10 @@
 
 #define DRIVER_MAJOR		3
 #define DRIVER_MINOR		4
-#define DRIVER_PATCHLEVEL	7
+#define DRIVER_PATCHLEVEL	8
 #define DRIVER_NAME		"openchrome"
 #define DRIVER_DESC		"OpenChrome DRM for VIA Technologies Chrome IGP"
-#define DRIVER_DATE		"20210402"
+#define DRIVER_DATE		"20210403"
 #define DRIVER_AUTHOR		"OpenChrome Project"
 
 
commit b0c9a88eca052c8384152c94a22af16e5ab03c73
Author: Kevin Brace <kevinbrace at gmx.com>
Date:   Sat Apr 3 17:06:31 2021 -0700

    drm/openchrome: Add modeset kernel parameter
    
    modeset kernel parameter will enable / disable this device driver.
    The default setting disables this device driver since it is still
    experimental.
    
    Signed-off-by: Kevin Brace <kevinbrace at gmx.com>

diff --git a/drivers/gpu/drm/openchrome/openchrome_drv.c b/drivers/gpu/drm/openchrome/openchrome_drv.c
index 7877ef1dee1f..e478fd8a139a 100644
--- a/drivers/gpu/drm/openchrome/openchrome_drv.c
+++ b/drivers/gpu/drm/openchrome/openchrome_drv.c
@@ -27,6 +27,7 @@
  * DEALINGS IN THE SOFTWARE.
  */
 
+#include <linux/console.h>
 #include <linux/module.h>
 
 #include <drm/drm_drv.h>
@@ -36,6 +37,18 @@
 #include "openchrome_drv.h"
 
 
+/*
+ * For now, this device driver will be disabled, unless the
+ * user decides to enable it.
+ */
+int openchrome_modeset = 0;
+
+MODULE_PARM_DESC(modeset, "Enable DRM device driver "
+				"(Default: Disabled, "
+				"0 = Disabled,"
+				"1 = Enabled)");
+module_param_named(modeset, openchrome_modeset, int, 0400);
+
 int openchrome_hdmi_audio = 0;
 
 MODULE_PARM_DESC(audio, "HDMI Audio enable (1 = enable)");
@@ -250,14 +263,24 @@ static struct pci_driver openchrome_pci_driver = {
 
 static int __init openchrome_init(void)
 {
-	int ret;
+	int ret = 0;
 
 	DRM_DEBUG_KMS("Entered %s.\n", __func__);
 
+	if ((openchrome_modeset == -1) &&
+		(vgacon_text_force())) {
+		openchrome_modeset = 0;
+	}
+
+	if (!openchrome_modeset) {
+		goto exit;
+	}
+
 	openchrome_driver.num_ioctls = openchrome_driver_num_ioctls;
 
 	ret = pci_register_driver(&openchrome_pci_driver);
 
+exit:
 	DRM_DEBUG_KMS("Exiting %s.\n", __func__);
 	return ret;
 }
@@ -266,8 +289,12 @@ static void __exit openchrome_exit(void)
 {
 	DRM_DEBUG_KMS("Entered %s.\n", __func__);
 
-	pci_unregister_driver(&openchrome_pci_driver);
+	if (!openchrome_modeset) {
+		goto exit;
+	}
 
+	pci_unregister_driver(&openchrome_pci_driver);
+exit:
 	DRM_DEBUG_KMS("Exiting %s.\n", __func__);
 }
 


More information about the openchrome-devel mailing list