From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jingoo Han Date: Thu, 30 Aug 2012 01:37:17 +0000 Subject: Re: [PATCH 1/4] video: mmp display subsystem Message-Id: <001401cd864f$fd91edb0$f8b5c910$%han@samsung.com> List-Id: References: <1346234684-12532-1-git-send-email-zzhu3@marvell.com> In-Reply-To: <1346234684-12532-1-git-send-email-zzhu3@marvell.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: linux-fbdev@vger.kernel.org On Wednesday, August 29, 2012 7:05 PM Zhou Zhu wrote: > > Added mmp display subsystem to support Marvell MMP display controllers. > > This subsystem contains 4 parts: > --fb folder > --core.c > --hw folder > --panel folder > > 1. fb folder contains implementation of fb. > fb get path and ovly from common interface and operates on these structures. > > 2. core.c provides common interface for a hardware abstraction. > Major parts of this interface are: > a) Path: path is a output device connected to a panel or HDMI TV. > Main operations of the path is set/get timing/output color. > fb operates output device through path structure. > b) Ovly: Ovly is a buffer shown on the path. > Ovly describes frame buffer and its source/destination size, offset, input > color, buffer address, z-order, and so on. > Each fb device maps to one ovly. > > 3. hw folder contains implementation of hardware operations defined by core.c. > It registers paths for fb use. > > 4. panel folder contains implementation of panels. > It's connected to path. Panel drivers would also regiester panels and linked > to path when probe. > > Change-Id: I830e34af9aad3196c2db021b4fb90ceeafbf73d2 Please remove unnecessary 'Change-Id'. > Signed-off-by: Zhou Zhu > Signed-off-by: Lisa Du > --- > drivers/video/Kconfig | 1 + > drivers/video/Makefile | 1 + > drivers/video/mmp/Kconfig | 5 + > drivers/video/mmp/Makefile | 1 + > drivers/video/mmp/core.c | 217 +++++++++++++++++++++++++ > include/video/mmp_disp.h | 381 ++++++++++++++++++++++++++++++++++++++++++++ > 6 files changed, 606 insertions(+), 0 deletions(-) > create mode 100644 drivers/video/mmp/Kconfig > create mode 100644 drivers/video/mmp/Makefile > create mode 100644 drivers/video/mmp/core.c > create mode 100644 include/video/mmp_disp.h > > diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig > index 0217f74..b71a5c9 100644 > --- a/drivers/video/Kconfig > +++ b/drivers/video/Kconfig > @@ -2447,6 +2447,7 @@ config FB_PUV3_UNIGFX > source "drivers/video/omap/Kconfig" > source "drivers/video/omap2/Kconfig" > source "drivers/video/exynos/Kconfig" > +source "drivers/video/mmp/Kconfig" > source "drivers/video/backlight/Kconfig" > > if VT > diff --git a/drivers/video/Makefile b/drivers/video/Makefile > index ee8dafb..6b0ae31 100644 > --- a/drivers/video/Makefile > +++ b/drivers/video/Makefile > @@ -106,6 +106,7 @@ obj-$(CONFIG_FB_ASILIANT) += asiliantfb.o > obj-$(CONFIG_FB_PXA) += pxafb.o > obj-$(CONFIG_FB_PXA168) += pxa168fb.o > obj-$(CONFIG_PXA3XX_GCU) += pxa3xx-gcu.o > +obj-$(CONFIG_MMP_DISP) += mmp/ > obj-$(CONFIG_FB_W100) += w100fb.o > obj-$(CONFIG_FB_TMIO) += tmiofb.o > obj-$(CONFIG_FB_AU1100) += au1100fb.o > diff --git a/drivers/video/mmp/Kconfig b/drivers/video/mmp/Kconfig > new file mode 100644 > index 0000000..0554336 > --- /dev/null > +++ b/drivers/video/mmp/Kconfig > @@ -0,0 +1,5 @@ > +menuconfig MMP_DISP > + tristate "Marvell MMP Display Subsystem support" > + depends on CPU_PXA910 || CPU_MMP2 || CPU_MMP3 || CPU_PXA988 > + help > + Marvell Display Subsystem support. > diff --git a/drivers/video/mmp/Makefile b/drivers/video/mmp/Makefile > new file mode 100644 > index 0000000..820eb10 > --- /dev/null > +++ b/drivers/video/mmp/Makefile > @@ -0,0 +1 @@ > +obj-y += core.o > diff --git a/drivers/video/mmp/core.c b/drivers/video/mmp/core.c > new file mode 100644 > index 0000000..b2e7433 > --- /dev/null > +++ b/drivers/video/mmp/core.c > @@ -0,0 +1,217 @@ > +/* > + * linux/drivers/video/mmp/common.c > + * This driver is a common framework for Marvell Display Controller > + * > + * Copyright (C) 2012 Marvell Technology Group Ltd. > + * Authors: Zhou Zhu > + * > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License as published by the > + * Free Software Foundation; either version 2 of the License, or (at your > + * option) any later version. > + * > + * This program is distributed in the hope that it will be useful, but WITHOUT > + * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or > + * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for > + * more details. > + * > + * You should have received a copy of the GNU General Public License along with > + * this program. If not, see . > + * > + */ > + > +#include > +#include > +#include > +#include