From mboxrd@z Thu Jan 1 00:00:00 1970 Return-path: Received: from eu1sys200aog120.obsmtp.com ([207.126.144.149]:54943 "EHLO eu1sys200aog120.obsmtp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1755835Ab0KJM0t (ORCPT ); Wed, 10 Nov 2010 07:26:49 -0500 From: Jimmy Rubin To: , , Cc: Linus Walleij , Dan Johansson , Jimmy Rubin Subject: [PATCH 09/10] MCDE: Add build files and bus Date: Wed, 10 Nov 2010 13:04:12 +0100 Message-ID: <1289390653-6111-10-git-send-email-jimmy.rubin@stericsson.com> In-Reply-To: <1289390653-6111-9-git-send-email-jimmy.rubin@stericsson.com> References: <1289390653-6111-1-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-2-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-3-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-4-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-5-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-6-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-7-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-8-git-send-email-jimmy.rubin@stericsson.com> <1289390653-6111-9-git-send-email-jimmy.rubin@stericsson.com> MIME-Version: 1.0 Content-Type: text/plain List-ID: Sender: This patch adds support for the MCDE, Memory-to-display controller, found in the ST-Ericsson ux500 products. This patch adds the necessary build files for MCDE and the bus that all displays are connected to. Signed-off-by: Jimmy Rubin Acked-by: Linus Walleij --- drivers/video/Kconfig | 2 + drivers/video/Makefile | 1 + drivers/video/mcde/Kconfig | 39 ++++++ drivers/video/mcde/Makefile | 12 ++ drivers/video/mcde/mcde_bus.c | 259 +++++++++++++++++++++++++++++++++++++++++ drivers/video/mcde/mcde_mod.c | 67 +++++++++++ 6 files changed, 380 insertions(+), 0 deletions(-) create mode 100644 drivers/video/mcde/Kconfig create mode 100644 drivers/video/mcde/Makefile create mode 100644 drivers/video/mcde/mcde_bus.c create mode 100644 drivers/video/mcde/mcde_mod.c diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig index 935cdc2..04aecf4 100644 --- a/drivers/video/Kconfig +++ b/drivers/video/Kconfig @@ -2260,6 +2260,8 @@ config FB_JZ4740 source "drivers/video/omap/Kconfig" source "drivers/video/omap2/Kconfig" +source "drivers/video/mcde/Kconfig" + source "drivers/video/backlight/Kconfig" source "drivers/video/display/Kconfig" diff --git a/drivers/video/Makefile b/drivers/video/Makefile index 485e8ed..325cdcc 100644 --- a/drivers/video/Makefile +++ b/drivers/video/Makefile @@ -128,6 +128,7 @@ obj-$(CONFIG_FB_SH_MOBILE_HDMI) += sh_mobile_hdmi.o obj-$(CONFIG_FB_SH_MOBILE_LCDC) += sh_mobile_lcdcfb.o obj-$(CONFIG_FB_OMAP) += omap/ obj-y += omap2/ +obj-$(CONFIG_FB_MCDE) += mcde/ obj-$(CONFIG_XEN_FBDEV_FRONTEND) += xen-fbfront.o obj-$(CONFIG_FB_CARMINE) += carminefb.o obj-$(CONFIG_FB_MB862XX) += mb862xx/ diff --git a/drivers/video/mcde/Kconfig b/drivers/video/mcde/Kconfig new file mode 100644 index 0000000..5dab37b --- /dev/null +++ b/drivers/video/mcde/Kconfig @@ -0,0 +1,39 @@ +config FB_MCDE + tristate "MCDE support" + depends on FB + select FB_SYS_FILLRECT + select FB_SYS_COPYAREA + select FB_SYS_IMAGEBLIT + select FB_SYS_FOPS + ---help--- + This enables support for MCDE based frame buffer driver. + + Please read the file + +config MCDE_DISPLAY_GENERIC_DSI + tristate "Generic display driver" + depends on FB_MCDE + +config FB_MCDE_DEBUG + bool "MCDE debug messages" + depends on FB_MCDE + ---help--- + Say Y here if you want the MCDE driver to output debug messages + +config FB_MCDE_VDEBUG + bool "MCDE verbose debug messages" + depends on FB_MCDE_DEBUG + ---help--- + Say Y here if you want the MCDE driver to output more debug messages + +config MCDE_FB_AVOID_REALLOC + bool "MCDE early allocate framebuffer" + default n + depends on FB_MCDE + ---help--- + If you say Y here maximum frame buffer size is allocated and + used for all resolutions. If you say N here, the frame buffer is + reallocated when resolution is changed. This reallocation might + fail because of fragmented memory. Note that this memory will + never be deallocated, while the MCDE framebuffer is used. + diff --git a/drivers/video/mcde/Makefile b/drivers/video/mcde/Makefile new file mode 100644 index 0000000..f90979a --- /dev/null +++ b/drivers/video/mcde/Makefile @@ -0,0 +1,12 @@ + +mcde-objs := mcde_mod.o mcde_hw.o mcde_dss.o mcde_display.o mcde_bus.o mcde_fb.o +obj-$(CONFIG_FB_MCDE) += mcde.o + +obj-$(CONFIG_MCDE_DISPLAY_GENERIC_DSI) += display-generic_dsi.o + +ifdef CONFIG_FB_MCDE_DEBUG +EXTRA_CFLAGS += -DDEBUG +endif +ifdef CONFIG_FB_MCDE_VDEBUG +EXTRA_CFLAGS += -DVERBOSE_DEBUG +endif diff --git a/drivers/video/mcde/mcde_bus.c b/drivers/video/mcde/mcde_bus.c new file mode 100644 index 0000000..bc1f048 --- /dev/null +++ b/drivers/video/mcde/mcde_bus.c @@ -0,0 +1,259 @@ +/* + * Copyright (C) ST-Ericsson SA 2010 + * + * ST-Ericsson MCDE display bus driver + * + * Author: Marcus Lorentzon + * for ST-Ericsson. + * + * License terms: GNU General Public License (GPL), version 2. + */ + +#include +#include +#include +#include +#include + +#include