@@ -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_irq.h>
@@ -25,6 +27,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;
@@ -545,6 +553,9 @@ static int kmb_probe(struct platform_device *pdev)
if (ret)
goto err_register;
+ if (console)
+ drm_fbdev_generic_setup(&kmb->drm, 32);
+
return 0;
err_register: