From patchwork Tue Apr 2 18:20:33 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Tony Prisk X-Patchwork-Id: 2379921 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from merlin.infradead.org (merlin.infradead.org [205.233.59.134]) by patchwork1.kernel.org (Postfix) with ESMTP id D21B83FD8C for ; Tue, 2 Apr 2013 18:24:01 +0000 (UTC) Received: from localhost ([::1] helo=merlin.infradead.org) by merlin.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1UN5pt-0001V6-3g; Tue, 02 Apr 2013 18:21:33 +0000 Received: from server.prisktech.co.nz ([115.188.14.127]) by merlin.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1UN5ow-00017W-I2 for linux-arm-kernel@lists.infradead.org; Tue, 02 Apr 2013 18:20:40 +0000 Received: from localhost.localdomain (unknown [192.168.0.102]) by server.prisktech.co.nz (Postfix) with ESMTP id 60DC6FC09A0; Wed, 3 Apr 2013 07:20:36 +1300 (NZDT) From: Tony Prisk To: tomi.valkeinen@ti.com Subject: [PATCHv3 1/6] video: vt8500: Make wmt_ge_rops optional Date: Wed, 3 Apr 2013 07:20:33 +1300 Message-Id: <1364926838-6721-2-git-send-email-linux@prisktech.co.nz> X-Mailer: git-send-email 1.7.9.5 In-Reply-To: <1364926838-6721-1-git-send-email-linux@prisktech.co.nz> References: <1364926838-6721-1-git-send-email-linux@prisktech.co.nz> X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20130402_142035_244213_7D1EB411 X-CRM114-Status: GOOD ( 12.14 ) X-Spam-Score: -4.2 (----) X-Spam-Report: SpamAssassin version 3.3.2 on merlin.infradead.org summary: Content analysis details: (-4.2 points) pts rule name description ---- ---------------------- -------------------------------------------------- -2.3 RP_MATCHES_RCVD Envelope sender domain matches handover relay domain -1.9 BAYES_00 BODY: Bayes spam probability is 0 to 1% [score: 0.0000] Cc: linux-fbdev@vger.kernel.org, linux-kernel@vger.kernel.org, Tony Prisk , vt8500-wm8505-linux-kernel@googlegroups.com, plagnioj@jcrosoft.com, linux-arm-kernel@lists.infradead.org X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org wmt_ge_rops is a seperate driver to vt8500/wm8505 framebuffer driver but is currently a required option. This patch makes accelerated raster ops optional. Signed-off-by: Tony Prisk Reviewed-by: Jean-Christophe Plagniol-Villard --- drivers/video/Kconfig | 22 ++++++++++++---------- drivers/video/wmt_ge_rops.h | 23 +++++++++++++++++++++++ 2 files changed, 35 insertions(+), 10 deletions(-) diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig index 4c1546f..661aa54 100644 --- a/drivers/video/Kconfig +++ b/drivers/video/Kconfig @@ -212,14 +212,6 @@ config FB_SYS_FOPS depends on FB default n -config FB_WMT_GE_ROPS - tristate - depends on FB - default n - ---help--- - Include functions for accelerated rectangle filling and area - copying using WonderMedia Graphics Engine operations. - config FB_DEFERRED_IO bool depends on FB @@ -1799,7 +1791,8 @@ config FB_AU1200 config FB_VT8500 bool "VT8500 LCD Driver" depends on (FB = y) && ARM && ARCH_VT8500 - select FB_WMT_GE_ROPS + select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS) + select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS) select FB_SYS_IMAGEBLIT help This is the framebuffer driver for VIA VT8500 integrated LCD @@ -1808,12 +1801,21 @@ config FB_VT8500 config FB_WM8505 bool "WM8505 frame buffer support" depends on (FB = y) && ARM && ARCH_VT8500 - select FB_WMT_GE_ROPS + select FB_SYS_FILLRECT if (!FB_WMT_GE_ROPS) + select FB_SYS_COPYAREA if (!FB_WMT_GE_ROPS) select FB_SYS_IMAGEBLIT help This is the framebuffer driver for WonderMedia WM8505/WM8650 integrated LCD controller. +config FB_WMT_GE_ROPS + bool "VT8500/WM85xx accelerated raster ops support" + depends on (FB = y) && (FB_VT8500 || FB_WM8505) + default n + help + This adds support for accelerated raster operations on the + VIA VT8500 and Wondermedia 85xx series SoCs. + source "drivers/video/geode/Kconfig" config FB_HIT diff --git a/drivers/video/wmt_ge_rops.h b/drivers/video/wmt_ge_rops.h index 8738075..f73ec63 100644 --- a/drivers/video/wmt_ge_rops.h +++ b/drivers/video/wmt_ge_rops.h @@ -1,5 +1,28 @@ +#ifdef CONFIG_FB_WMT_GE_ROPS + extern void wmt_ge_fillrect(struct fb_info *info, const struct fb_fillrect *rect); extern void wmt_ge_copyarea(struct fb_info *info, const struct fb_copyarea *area); extern int wmt_ge_sync(struct fb_info *info); + +#else + +static inline int wmt_ge_sync(struct fb_info *p) +{ + return 0; +} + +static inline void wmt_ge_fillrect(struct fb_info *p, + const struct fb_fillrect *rect) +{ + sys_fillrect(p, rect); +} + +static inline void wmt_ge_copyarea(struct fb_info *p, + const struct fb_copyarea *area) +{ + sys_copyarea(p, area); +} + +#endif