Re: [PATCH v3 7/7] drm/kmb: Enable support for framebuffer console

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi

Am 14.10.21 um 01:36 schrieb Anitha Chrisanthus:
Enable support for fbcon (framebuffer console).
The user can initialize fbcon by loading kmb-drm with the parameter
console=1.

v2: added missing static clk_enable

Signed-off-by: Edmund Dea <edmund.j.dea@xxxxxxxxx>
Signed-off-by: Anitha Chrisanthus <anitha.chrisanthus@xxxxxxxxx>
---
  drivers/gpu/drm/kmb/kmb_drv.c | 11 +++++++++++
  1 file changed, 11 insertions(+)

diff --git a/drivers/gpu/drm/kmb/kmb_drv.c b/drivers/gpu/drm/kmb/kmb_drv.c
index 961ac6fb5fcf..b4e66eac63b5 100644
--- a/drivers/gpu/drm/kmb/kmb_drv.c
+++ b/drivers/gpu/drm/kmb/kmb_drv.c
@@ -5,6 +5,7 @@
#include <linux/clk.h>
  #include <linux/module.h>
+#include <linux/moduleparam.h>
  #include <linux/of_graph.h>
  #include <linux/of_platform.h>
  #include <linux/of_reserved_mem.h>
@@ -15,6 +16,7 @@
#include <drm/drm_atomic_helper.h>
  #include <drm/drm_drv.h>
+#include <drm/drm_fb_helper.h>
  #include <drm/drm_gem_cma_helper.h>
  #include <drm/drm_gem_framebuffer_helper.h>
  #include <drm/drm_probe_helper.h>
@@ -24,6 +26,12 @@
  #include "kmb_dsi.h"
  #include "kmb_regs.h"
+/* Module Parameters */
+static bool console;
+module_param(console, bool, 0400);
+MODULE_PARM_DESC(console,
+		 "Enable framebuffer console support (0=disable [default], 1=on)");
+
  static int kmb_display_clk_enable(struct kmb_drm_private *kmb)
  {
  	int ret = 0;
@@ -559,6 +567,9 @@ static int kmb_probe(struct platform_device *pdev)
  	if (ret)
  		goto err_register;
+ if (console)
+		drm_fbdev_generic_setup(&kmb->drm, 32);

The use of the final parameter is somewhat confusing and should probably be 0. It's the number of bits per pixel. 32 is the default. But the preferred way of selecting color mode is via dev->mode_config.preferred_depth, which is the color depth (24!). So maybe rather set preferred_depth to 24 and let the fbdev helper figure out the details.

Best regards
Thomas

+
  	return 0;
err_register:


--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Felix Imendörffer

Attachment: OpenPGP_signature
Description: OpenPGP digital signature


[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux