* Re: [PATCH 1/2] video: mmp: Remove references to CPU_MMP3
From: Jingoo Han @ 2014-04-15 12:08 UTC (permalink / raw)
To: 'Paul Bolle', 'Tomi Valkeinen'
Cc: 'Jean-Christophe Plagniol-Villard',
'Richard Weinberger', linux-fbdev, linux-kernel,
'Jingoo Han'
In-Reply-To: <1397561044.1985.47.camel@x220>
On Tuesday, April 15, 2014 8:24 PM, Paul Bolle wrote:
>
> From: Richard Weinberger <richard@nod.at>
>
> References to the Kconfig symbol CPU_MMP3 were added to the tree since
> v3.6. But that Kconfig symbol has never been part of the tree. So get
> rid of these references.
>
> Signed-off-by: Richard Weinberger <richard@nod.at>
> Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Best regards,
Jingoo Han
> ---
> 0) Tested with git grep.
>
> 1) Originally sent as "[PATCH 01/28] Remove CPU_MMP3" two months ago.
> Added a proper commit explanation to aid reviewers.
>
> 2) One reference to CPU_MMP3 remains. I'll remove that in a more
> elaborate patch.
>
> drivers/video/mmp/Kconfig | 2 +-
> drivers/video/mmp/hw/Kconfig | 4 ++--
> 2 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/video/mmp/Kconfig b/drivers/video/mmp/Kconfig
> index e9ea39e13722..969925d694c9 100644
> --- a/drivers/video/mmp/Kconfig
> +++ b/drivers/video/mmp/Kconfig
> @@ -1,6 +1,6 @@
> menuconfig MMP_DISP
> tristate "Marvell MMP Display Subsystem support"
> - depends on CPU_PXA910 || CPU_MMP2 || CPU_MMP3 || CPU_PXA988
> + depends on CPU_PXA910 || CPU_MMP2 || CPU_PXA988
> help
> Marvell Display Subsystem support.
>
> diff --git a/drivers/video/mmp/hw/Kconfig b/drivers/video/mmp/hw/Kconfig
> index 02f109a20cd0..99f0506afc99 100644
> --- a/drivers/video/mmp/hw/Kconfig
> +++ b/drivers/video/mmp/hw/Kconfig
> @@ -2,12 +2,12 @@ if MMP_DISP
>
> config MMP_DISP_CONTROLLER
> bool "mmp display controller hw support"
> - depends on CPU_PXA910 || CPU_MMP2 || CPU_MMP3 || CPU_PXA988
> + depends on CPU_PXA910 || CPU_MMP2 || CPU_PXA988
> default n
> help
> Marvell MMP display hw controller support
> this controller is used on Marvell PXA910,
> - MMP2, MMP3, PXA988 chips
> + MMP2, PXA988 chips
>
> config MMP_DISP_SPI
> bool "mmp display controller spi port"
> --
> 1.9.0
^ permalink raw reply
* Re: [PATCH 2/2] video: mmp: Remove references to CPU_PXA988
From: Jingoo Han @ 2014-04-15 12:10 UTC (permalink / raw)
To: 'Paul Bolle', 'Tomi Valkeinen'
Cc: 'Jean-Christophe Plagniol-Villard',
'Richard Weinberger', linux-fbdev, linux-kernel,
'Jingoo Han'
In-Reply-To: <1397561078.1985.48.camel@x220>
On Tuesday, April 15, 2014 8:25 PM, Paul Bolle wrote:
>
> From: Richard Weinberger <richard@nod.at>
>
> References to the Kconfig symbol CPU_PXA988 were added to the tree in
> v3.9. But that Kconfig symbol has never been part of the tree. So get
> rid of these references.
>
> Signed-off-by: Richard Weinberger <richard@nod.at>
> Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Reviewed-by: Jingoo Han <jg1.han@samsung.com>
Best regards,
Jingoo Han
> ---
> 0) Tested with git grep.
>
> 1) Originally sent as "[PATCH 07/28] Remove CPU_PXA988" two months ago.
> Added a proper commit explanation to aid reviewers.
>
> drivers/video/mmp/Kconfig | 2 +-
> drivers/video/mmp/hw/Kconfig | 6 +++---
> drivers/video/mmp/hw/mmp_ctrl.h | 32 --------------------------------
> 3 files changed, 4 insertions(+), 36 deletions(-)
>
> diff --git a/drivers/video/mmp/Kconfig b/drivers/video/mmp/Kconfig
> index 969925d694c9..f37bd6c47779 100644
> --- a/drivers/video/mmp/Kconfig
> +++ b/drivers/video/mmp/Kconfig
> @@ -1,6 +1,6 @@
> menuconfig MMP_DISP
> tristate "Marvell MMP Display Subsystem support"
> - depends on CPU_PXA910 || CPU_MMP2 || CPU_PXA988
> + depends on CPU_PXA910 || CPU_MMP2
> help
> Marvell Display Subsystem support.
>
> diff --git a/drivers/video/mmp/hw/Kconfig b/drivers/video/mmp/hw/Kconfig
> index 99f0506afc99..c735d133895c 100644
> --- a/drivers/video/mmp/hw/Kconfig
> +++ b/drivers/video/mmp/hw/Kconfig
> @@ -2,12 +2,12 @@ if MMP_DISP
>
> config MMP_DISP_CONTROLLER
> bool "mmp display controller hw support"
> - depends on CPU_PXA910 || CPU_MMP2 || CPU_PXA988
> + depends on CPU_PXA910 || CPU_MMP2
> default n
> help
> Marvell MMP display hw controller support
> - this controller is used on Marvell PXA910,
> - MMP2, PXA988 chips
> + this controller is used on Marvell PXA910 and
> + MMP2 chips
>
> config MMP_DISP_SPI
> bool "mmp display controller spi port"
> diff --git a/drivers/video/mmp/hw/mmp_ctrl.h b/drivers/video/mmp/hw/mmp_ctrl.h
> index 53301cfdb1ae..56fdeab34355 100644
> --- a/drivers/video/mmp/hw/mmp_ctrl.h
> +++ b/drivers/video/mmp/hw/mmp_ctrl.h
> @@ -167,11 +167,7 @@ struct lcd_regs {
> PN2_IOPAD_CONTROL) : LCD_TOP_CTRL)
>
> /* dither configure */
> -#ifdef CONFIG_CPU_PXA988
> -#define LCD_DITHER_CTRL (0x01EC)
> -#else
> #define LCD_DITHER_CTRL (0x00A0)
> -#endif
>
> #define DITHER_TBL_INDEX_SEL(s) ((s) << 16)
> #define DITHER_MODE2(m) ((m) << 12)
> @@ -186,15 +182,6 @@ struct lcd_regs {
> #define DITHER_EN1 (1)
>
> /* dither table data was fixed by video bpp of input and output*/
> -#ifdef CONFIG_CPU_PXA988
> -#define DITHER_TB_4X4_INDEX0 (0x6e4ca280)
> -#define DITHER_TB_4X4_INDEX1 (0x5d7f91b3)
> -#define DITHER_TB_4X8_INDEX0 (0xb391a280)
> -#define DITHER_TB_4X8_INDEX1 (0x7f5d6e4c)
> -#define DITHER_TB_4X8_INDEX2 (0x80a291b3)
> -#define DITHER_TB_4X8_INDEX3 (0x4c6e5d7f)
> -#define LCD_DITHER_TBL_DATA (0x01F0)
> -#else
> #define DITHER_TB_4X4_INDEX0 (0x3b19f7d5)
> #define DITHER_TB_4X4_INDEX1 (0x082ac4e6)
> #define DITHER_TB_4X8_INDEX0 (0xf7d508e6)
> @@ -202,7 +189,6 @@ struct lcd_regs {
> #define DITHER_TB_4X8_INDEX2 (0xc4e6d5f7)
> #define DITHER_TB_4X8_INDEX3 (0x082a193b)
> #define LCD_DITHER_TBL_DATA (0x00A4)
> -#endif
>
> /* Video Frame 0&1 start address registers */
> #define LCD_SPU_DMA_START_ADDR_Y0 0x00C0
> @@ -933,16 +919,9 @@ struct lcd_regs {
> #define LCD_PN2_SQULN2_CTRL (0x02F0)
> #define ALL_LAYER_ALPHA_SEL (0x02F4)
>
> -/* pxa988 has different MASTER_CTRL from MMP3/MMP2 */
> -#ifdef CONFIG_CPU_PXA988
> -#define TIMING_MASTER_CONTROL (0x01F4)
> -#define MASTER_ENH(id) (1 << ((id) + 5))
> -#define MASTER_ENV(id) (1 << ((id) + 6))
> -#else
> #define TIMING_MASTER_CONTROL (0x02F8)
> #define MASTER_ENH(id) (1 << (id))
> #define MASTER_ENV(id) (1 << ((id) + 4))
> -#endif
>
> #define DSI_START_SEL_SHIFT(id) (((id) << 1) + 8)
> #define timing_master_config(path, dsi_id, lcd_id) \
> @@ -1312,19 +1291,8 @@ struct dsi_regs {
> #define DSI_PHY_TIME_3_CFG_CSR_TIME_REQRDY_MASK (0xff)
> #define DSI_PHY_TIME_3_CFG_CSR_TIME_REQRDY_SHIFT 0
>
> -/*
> - * DSI timings
> - * PXA988 has diffrent ESC CLK with MMP2/MMP3
> - * it will be used in dsi_set_dphy() in pxa688_phy.c
> - * as low power mode clock.
> - */
> -#ifdef CONFIG_CPU_PXA988
> -#define DSI_ESC_CLK 52 /* Unit: Mhz */
> -#define DSI_ESC_CLK_T 19 /* Unit: ns */
> -#else
> #define DSI_ESC_CLK 66 /* Unit: Mhz */
> #define DSI_ESC_CLK_T 15 /* Unit: ns */
> -#endif
>
> /* LVDS */
> /* LVDS_PHY_CTRL */
> --
> 1.9.0
^ permalink raw reply
* spende /Donation
From: isabelle @ 2014-04-15 19:47 UTC (permalink / raw)
To: linux-fbdev
Hallo
Wenn ich diese Nachricht zu senden wollte, ist dies nicht einfach Zufall. Dies ist, weil Ihre e-Mail vom elektronischen Roboter gesichert meine WX.7AR BW ausgewählt wurde.
Zunächst möchte ich mich für dieses Eindringen in Ihr Leben zu entschuldigen, obwohl ich zugeben, dass es mir sehr wichtig. Ich bin Isabelle Vasudev. Ich leide an Krebs im Hals seit nun mehr als 3 Jahre und eine halbe und es leider, mein Arzt hat gerade informiert mich, dass ich bin voller unheilbar und, dass meine Tage, wegen meinen etwas gezählt sind abgebaut Zustand. Ich bin eine Witwe und ich habe keine Kind, das ich beginne zu bedauern.
In der Tat ist der Grund, warum ich Sie kontaktieren bin, möchte ich einen Teil von meinem Grundstück zu spenden, weil ich niemand, wer die Erben konnte. Ich habe fast mein ganzes Zeug, darunter ein Unternehmen der Export von Holz, Gummi und Stahl-Industrie in Afrika, wo ich wohne nun mehr 10 Jahren, verkauft. Ein großer Teil der Gelder gesammelt wurde mit unterschiedlichen Verbänden humanitären Charakter überall in der Welt, aber besonders hier in Afrika bezahlt.
Im Hinblick auf den Rest der Summe genau in Höhe von 750.000, 00euros (sieben hundert und fünfzig tausend Euro) auf eine gesperrte Mitarbeiter-Account, meine letzte wünschen würde Sie es spenden, so dass Sie in Ihrer Branche und vor allem den humanitären investieren können. Ich bin ganz bewusst was ich zu tun beabsichtigen, und ich denke, trotz der Tatsache, die wir nicht wissen, werdet ihr diese Summe gut nutzen. Ich bitte Sie, bitte dieses Erbe zu akzeptieren, ohne jedoch Fragen Sie alles, was in zurückgeben wenn es nicht immer denken, gutes zu tun, um dich herum, was ich nicht getan habe, in meiner Existenz.
Das heißt, wird auf einer verantwortlichen Person und besonders gutem Glauben fallen zu lassen beruhigt, ich möchte bitten, dass Sie bitte mich bei den meisten schnell kontaktieren, um weitere Erklärung über die Gründe für meine Geste und den Verlauf der Dinge zu geben. Bitte kontaktieren Sie mich so bald wie möglich, wenn Sie mein Angebot akzeptieren.
Gott möge mit dir sein!
Ich fordere Sie auf, mich über meine persönliche e-Mail-Adresse zu kontaktieren:
Isabelle.claude654@laposte.net
Der Frieden und Barmherzigkeit Gottes möge mit dir sein.
Mrs Isabelle
^ permalink raw reply
* Re: [PATCH RESEND] video: bf54x-lq043fb: fix build error
From: Steven Miao @ 2014-04-16 2:48 UTC (permalink / raw)
To: Tomi Valkeinen
Cc: Steven Miao, Jean-Christophe Plagniol-Villard, bfin,
open list:CAN NETWORK DRIVERS <linux-can@vger.kernel.org>, open list:NETWORKING DRIVERS <netdev@vger.kernel.org>, open list,
linux-fbdev
In-Reply-To: <534CFFF5.70801@ti.com>
Tomi,
On Tue, Apr 15, 2014 at 5:46 PM, Tomi Valkeinen <tomi.valkeinen@ti.com> wrote:
> On 15/04/14 10:17, Steven Miao wrote:
>> From: Steven Miao <realmz6@gmail.com>
>>
>> include <linux/gpio.h>, drop <asm/gpio.h>
>>
>
> Thanks, queued for 3.15 fixes.
>
> Btw, usually it's good to say in the description what kind of build
> error happens (i.e. copy paste the error).
Thanks. I'll add more description next time.
>
> Tomi
>
>
-steven
^ permalink raw reply
* [GIT PULL] fbdev fixes for 3.15
From: Tomi Valkeinen @ 2014-04-16 9:03 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, linux-fbdev
[-- Attachment #1: Type: text/plain, Size: 1964 bytes --]
Hi Linus,
Please pull fbdev fixes for 3.15.
The drivers/video/Kconfig change in this pull request will conflict with the
fbdev reorder series, which is not yet in your tree. If that's an issue, I can
resend this without the Kconfig change.
Tomi
The following changes since commit c9eaa447e77efe77b7fa4c953bd62de8297fd6c5:
Linux 3.15-rc1 (2014-04-13 14:18:35 -0700)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux.git tags/fbdev-fixes-3.15
for you to fetch changes up to c26ef3eb3c11274bad1b64498d0a134f85755250:
video: bf54x-lq043fb: fix build error (2014-04-15 12:44:16 +0300)
----------------------------------------------------------------
fbdev fixes for 3.15:
- fix build errors for bf54x-lq043fb and imxfb
- fbcon fix for da8xx-fb
- omapdss fixes for hdmi audio, irq handling and fclk calculation
----------------------------------------------------------------
Alexander Shiyan (1):
video: imxfb: Select LCD_CLASS_DEVICE unconditionally
Jon Ringle (1):
video: da8xx-fb: Fix casting of info->pseudo_palette
Jyri Sarha (2):
OMAPDSS: Take pixelclock unit change into account in hdmi_compute_acr()
OMAPDSS: Change struct reg_field to dispc_reg_field
Steven Miao (1):
video: bf54x-lq043fb: fix build error
Tomi Valkeinen (2):
OMAPDSS: fix rounding when calculating fclk rate
OMAPDSS: fix shared irq handlers
drivers/video/Kconfig | 2 ++
drivers/video/bf54x-lq043fb.c | 2 +-
drivers/video/da8xx-fb.c | 10 +-----
drivers/video/omap2/dss/dispc.c | 67 +++++++++++++++++++++++++++++------
drivers/video/omap2/dss/dsi.c | 20 +++++++++++
drivers/video/omap2/dss/dss.c | 4 +--
drivers/video/omap2/dss/dss.h | 6 ----
drivers/video/omap2/dss/hdmi_common.c | 8 ++---
8 files changed, 87 insertions(+), 32 deletions(-)
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* [PATCH] fbdev: fix possible NULL pointer derefernce
From: Daeseok Youn @ 2014-04-16 9:40 UTC (permalink / raw)
To: plagnioj
Cc: tomi.valkeinen, jg1.han, laurent.pinchart, daeseok.youn,
robdclark, linux-fbdev, linux-kernel
The spec->modedb can be NULL by fb_create_modedb().
And also smatch says:
drivers/video/fbdev/core/fbmon.c:975 fb_edid_to_monspecs() error:
potential null dereference 'specs->modedb'.
(fb_create_modedb returns null)
Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
---
drivers/video/fbdev/core/fbmon.c | 3 +++
1 files changed, 3 insertions(+), 0 deletions(-)
diff --git a/drivers/video/fbdev/core/fbmon.c b/drivers/video/fbdev/core/fbmon.c
index c204ebe..db274ca 100644
--- a/drivers/video/fbdev/core/fbmon.c
+++ b/drivers/video/fbdev/core/fbmon.c
@@ -966,6 +966,9 @@ void fb_edid_to_monspecs(unsigned char *edid, struct fb_monspecs *specs)
specs->modedb = fb_create_modedb(edid, &specs->modedb_len);
+ if (!specs->modedb)
+ return;
+
/*
* Workaround for buggy EDIDs that sets that the first
* detailed timing is preferred but has not detailed
--
1.7.4.4
^ permalink raw reply related
* Re: [PATCH] fbdev: fix possible NULL pointer derefernce
From: Jean-Christophe PLAGNIOL-VILLARD @ 2014-04-16 12:38 UTC (permalink / raw)
To: Daeseok Youn
Cc: Jean-Christophe PLAGNIOL-VILLARD, tomi.valkeinen, jg1.han,
laurent.pinchart, robdclark, linux-fbdev, linux-kernel
In-Reply-To: <20140416094034.GA18082@devel>
On Apr 16, 2014, at 5:40 PM, Daeseok Youn <daeseok.youn@gmail.com> wrote:
>
> The spec->modedb can be NULL by fb_create_modedb().
>
> And also smatch says:
> drivers/video/fbdev/core/fbmon.c:975 fb_edid_to_monspecs() error:
> potential null dereference 'specs->modedb'.
> (fb_create_modedb returns null)
>
> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
> ---
> drivers/video/fbdev/core/fbmon.c | 3 +++
> 1 files changed, 3 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/video/fbdev/core/fbmon.c b/drivers/video/fbdev/core/fbmon.c
> index c204ebe..db274ca 100644
> --- a/drivers/video/fbdev/core/fbmon.c
> +++ b/drivers/video/fbdev/core/fbmon.c
> @@ -966,6 +966,9 @@ void fb_edid_to_monspecs(unsigned char *edid, struct fb_monspecs *specs)
>
> specs->modedb = fb_create_modedb(edid, &specs->modedb_len);
>
> + if (!specs->modedb)
> + return;
> +
we need to return an error and trace it
Best Regards,
J.
> /*
> * Workaround for buggy EDIDs that sets that the first
> * detailed timing is preferred but has not detailed
> --
> 1.7.4.4
>
^ permalink raw reply
* Re: [GIT PULL] fbdev fixes for 3.15
From: Linus Torvalds @ 2014-04-16 23:04 UTC (permalink / raw)
To: Tomi Valkeinen; +Cc: linux-kernel, linux-fbdev
In-Reply-To: <534E4775.8010009@ti.com>
On Wed, Apr 16, 2014 at 2:03 AM, Tomi Valkeinen <tomi.valkeinen@ti.com> wrote:
>
> The drivers/video/Kconfig change in this pull request will conflict with the
> fbdev reorder series, which is not yet in your tree. If that's an issue, I can
> resend this without the Kconfig change.
I was actually hoping/expecting you to just resend the renaming
rebased on top of 3.15-rc1. Or maybe you could do it on top of this.
Linus
^ permalink raw reply
* Re: [PATCH] fbdev: fix possible NULL pointer derefernce
From: DaeSeok Youn @ 2014-04-17 0:00 UTC (permalink / raw)
To: Jean-Christophe PLAGNIOL-VILLARD
Cc: tomi.valkeinen, jg1.han, laurent.pinchart, Rob Clark, linux-fbdev,
linux-kernel
In-Reply-To: <6A3BE65E-93FD-4E22-A55E-49E54E435558@jcrosoft.com>
Hello,
2014-04-16 21:38 GMT+09:00 Jean-Christophe PLAGNIOL-VILLARD
<plagnioj@jcrosoft.com>:
>
> On Apr 16, 2014, at 5:40 PM, Daeseok Youn <daeseok.youn@gmail.com> wrote:
>
>>
>> The spec->modedb can be NULL by fb_create_modedb().
>>
>> And also smatch says:
>> drivers/video/fbdev/core/fbmon.c:975 fb_edid_to_monspecs() error:
>> potential null dereference 'specs->modedb'.
>> (fb_create_modedb returns null)
>>
>> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
>> ---
>> drivers/video/fbdev/core/fbmon.c | 3 +++
>> 1 files changed, 3 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/video/fbdev/core/fbmon.c b/drivers/video/fbdev/core/fbmon.c
>> index c204ebe..db274ca 100644
>> --- a/drivers/video/fbdev/core/fbmon.c
>> +++ b/drivers/video/fbdev/core/fbmon.c
>> @@ -966,6 +966,9 @@ void fb_edid_to_monspecs(unsigned char *edid, struct fb_monspecs *specs)
>>
>> specs->modedb = fb_create_modedb(edid, &specs->modedb_len);
>>
>> + if (!specs->modedb)
>> + return;
>> +
>
> we need to return an error and trace it
Yes, you're right. I will change return type from void to int and add
to handle an error when this function(fb_edid_to_monspecs) is called.
I will send this patch as your comment.
Thanks for review.
Daeseok Youn.
>
> Best Regards,
> J.
>> /*
>> * Workaround for buggy EDIDs that sets that the first
>> * detailed timing is preferred but has not detailed
>> --
>> 1.7.4.4
>>
>
^ permalink raw reply
* Re: [GIT PULL] fbdev fixes for 3.15
From: Stephen Rothwell @ 2014-04-17 3:24 UTC (permalink / raw)
To: Linus Torvalds; +Cc: Tomi Valkeinen, linux-kernel, linux-fbdev
In-Reply-To: <CA+55aFz7Hgjc9wmiriqGT8VXNF-7b0aUKf96r=TCP+1NOTSVeQ@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 715 bytes --]
On Wed, 16 Apr 2014 16:04:39 -0700 Linus Torvalds <torvalds@linux-foundation.org> wrote:
>
> On Wed, Apr 16, 2014 at 2:03 AM, Tomi Valkeinen <tomi.valkeinen@ti.com> wrote:
> >
> > The drivers/video/Kconfig change in this pull request will conflict with the
> > fbdev reorder series, which is not yet in your tree. If that's an issue, I can
> > resend this without the Kconfig change.
>
> I was actually hoping/expecting you to just resend the renaming
> rebased on top of 3.15-rc1. Or maybe you could do it on top of this.
Yeah, I was kind of hoping that this movement of files would be done with
sooner rather than later ...
--
Cheers,
Stephen Rothwell sfr@canb.auug.org.au
[-- Attachment #2: Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* Re: [PATCH] video: mx3fb: Add backlight support
From: Alexander Stein @ 2014-04-17 6:05 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <1396510675-14969-1-git-send-email-alexander.stein@systec-electronic.com>
Any feedback on this?
Alexander
On Thursday 03 April 2014 09:37:55, Alexander Stein wrote:
> Signed-off-by: Alexander Stein <alexander.stein@systec-electronic.com>
> ---
> drivers/video/mx3fb.c | 98 +++++++++++++++++++++++++++++++++++++++++++++++++++
> 1 file changed, 98 insertions(+)
>
> diff --git a/drivers/video/mx3fb.c b/drivers/video/mx3fb.c
> index 142e860..10a7244 100644
> --- a/drivers/video/mx3fb.c
> +++ b/drivers/video/mx3fb.c
> @@ -27,6 +27,7 @@
> #include <linux/clk.h>
> #include <linux/mutex.h>
> #include <linux/dma/ipu-dma.h>
> +#include <linux/backlight.h>
>
> #include <linux/platform_data/dma-imx.h>
> #include <linux/platform_data/video-mx3fb.h>
> @@ -34,6 +35,12 @@
> #include <asm/io.h>
> #include <asm/uaccess.h>
>
> +#if defined(CONFIG_BACKLIGHT_CLASS_DEVICE) || \
> + (defined(CONFIG_BACKLIGHT_CLASS_DEVICE_MODULE) && \
> + defined(CONFIG_MX3FB_MODULE))
> +#define PWM_BACKLIGHT_AVAILABLE
> +#endif
> +
> #define MX3FB_NAME "mx3_sdc_fb"
>
> #define MX3FB_REG_OFFSET 0xB4
> @@ -242,6 +249,10 @@ struct mx3fb_data {
> spinlock_t lock;
> struct device *dev;
>
> +#ifdef PWM_BACKLIGHT_AVAILABLE
> + struct backlight_device *bl;
> +#endif
> +
> uint32_t h_start_width;
> uint32_t v_start_width;
> enum disp_data_mapping disp_data_fmt;
> @@ -271,6 +282,74 @@ struct mx3fb_info {
> struct fb_var_screeninfo cur_var; /* current var info */
> };
>
> +static void sdc_set_brightness(struct mx3fb_data *mx3fb, uint8_t value);
> +
> +#ifdef PWM_BACKLIGHT_AVAILABLE
> +static u32 sdc_get_brightness(struct mx3fb_data *mx3fb);
> +
> +static int mx3fb_bl_get_brightness(struct backlight_device *bl)
> +{
> + struct mx3fb_data *fbd = bl_get_data(bl);
> +
> + return sdc_get_brightness(fbd);
> +}
> +
> +static int mx3fb_bl_update_status(struct backlight_device *bl)
> +{
> + struct mx3fb_data *fbd = bl_get_data(bl);
> + int brightness = bl->props.brightness;
> +
> + if (bl->props.power != FB_BLANK_UNBLANK)
> + brightness = 0;
> + if (bl->props.fb_blank != FB_BLANK_UNBLANK)
> + brightness = 0;
> +
> + fbd->backlight_level = (fbd->backlight_level & ~0xFF) | brightness;
> +
> + sdc_set_brightness(fbd, fbd->backlight_level);
> +
> + return 0;
> +}
> +
> +static const struct backlight_ops mx3fb_lcdc_bl_ops = {
> + .update_status = mx3fb_bl_update_status,
> + .get_brightness = mx3fb_bl_get_brightness,
> +};
> +
> +static void mx3fb_init_backlight(struct mx3fb_data *fbd)
> +{
> + struct backlight_properties props;
> + struct backlight_device *bl;
> +
> + if (fbd->bl)
> + return;
> +
> + memset(&props, 0, sizeof(struct backlight_properties));
> + props.max_brightness = 0xff;
> + props.type = BACKLIGHT_RAW;
> + sdc_set_brightness(fbd, fbd->backlight_level);
> +
> + bl = backlight_device_register("mx3fb-bl", fbd->dev, fbd,
> + &mx3fb_lcdc_bl_ops, &props);
> + if (IS_ERR(bl)) {
> + dev_err(fbd->dev, "error %ld on backlight register\n",
> + PTR_ERR(bl));
> + return;
> + }
> +
> + fbd->bl = bl;
> + bl->props.power = FB_BLANK_UNBLANK;
> + bl->props.fb_blank = FB_BLANK_UNBLANK;
> + bl->props.brightness = mx3fb_bl_get_brightness(bl);
> +}
> +
> +static void mx3fb_exit_backlight(struct mx3fb_data *fbd)
> +{
> + if (fbd->bl)
> + backlight_device_unregister(fbd->bl);
> +}
> +#endif
> +
> static void mx3fb_dma_done(void *);
>
> /* Used fb-mode and bpp. Can be set on kernel command line, therefore file-static. */
> @@ -628,6 +707,18 @@ static int sdc_set_global_alpha(struct mx3fb_data *mx3fb, bool enable, uint8_t a
> return 0;
> }
>
> +#ifdef PWM_BACKLIGHT_AVAILABLE
> +static u32 sdc_get_brightness(struct mx3fb_data *mx3fb)
> +{
> + u32 brightness;
> +
> + brightness = mx3fb_read_reg(mx3fb, SDC_PWM_CTRL);
> + brightness = (brightness >> 16) & 0xFF;
> +
> + return brightness;
> +}
> +#endif
> +
> static void sdc_set_brightness(struct mx3fb_data *mx3fb, uint8_t value)
> {
> dev_dbg(mx3fb->dev, "%s: value = %d\n", __func__, value);
> @@ -1534,6 +1625,9 @@ static int mx3fb_probe(struct platform_device *pdev)
> if (ret < 0)
> goto eisdc0;
>
> +#ifdef PWM_BACKLIGHT_AVAILABLE
> + mx3fb_init_backlight(mx3fb);
> +#endif
> return 0;
>
> eisdc0:
> @@ -1557,6 +1651,10 @@ static int mx3fb_remove(struct platform_device *dev)
> chan = &mx3_fbi->idmac_channel->dma_chan;
> release_fbi(fbi);
>
> +#ifdef PWM_BACKLIGHT_AVAILABLE
> + mx3fb_exit_backlight(mx3fb);
> +#endif
> +
> dma_release_channel(chan);
> dmaengine_put();
>
>
--
Dipl.-Inf. Alexander Stein
SYS TEC electronic GmbH
Am Windrad 2
08468 Heinsdorfergrund
Tel.: 03765 38600-1156
Fax: 03765 38600-4100
Email: alexander.stein@systec-electronic.com
Website: www.systec-electronic.com
Managing Director: Dipl.-Phys. Siegmar Schmidt
Commercial registry: Amtsgericht Chemnitz, HRB 28082
^ permalink raw reply
* Re: [GIT PULL] fbdev fixes for 3.15
From: Tomi Valkeinen @ 2014-04-17 7:08 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, linux-fbdev, Stephen Rothwell
In-Reply-To: <CA+55aFz7Hgjc9wmiriqGT8VXNF-7b0aUKf96r=TCP+1NOTSVeQ@mail.gmail.com>
[-- Attachment #1: Type: text/plain, Size: 698 bytes --]
On 17/04/14 02:04, Linus Torvalds wrote:
> On Wed, Apr 16, 2014 at 2:03 AM, Tomi Valkeinen <tomi.valkeinen@ti.com> wrote:
>>
>> The drivers/video/Kconfig change in this pull request will conflict with the
>> fbdev reorder series, which is not yet in your tree. If that's an issue, I can
>> resend this without the Kconfig change.
>
> I was actually hoping/expecting you to just resend the renaming
> rebased on top of 3.15-rc1. Or maybe you could do it on top of this.
Oh, sorry. I somehow got the impression that you were fine with what I
had sent, and you'll just merge it after -rc1.
I'll send a rebased version, based on fbdev-fixes-3.15. So pull this one
first.
Tomi
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* [GIT PULL] fbdev reorder for 3.15 (rebased)
From: Tomi Valkeinen @ 2014-04-17 7:08 UTC (permalink / raw)
To: Linus Torvalds; +Cc: linux-kernel, linux-fbdev, Stephen Rothwell
[-- Attachment #1: Type: text/plain, Size: 57714 bytes --]
Hi Linus,
The following changes since commit c26ef3eb3c11274bad1b64498d0a134f85755250:
video: bf54x-lq043fb: fix build error (2014-04-15 12:44:16 +0300)
are available in the git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tomba/linux.git tags/fbdev-reorder-3.15
for you to fetch changes up to 776bbb97e0a37fe67bd0870e5aa4845af856b872:
video: Kconfig: move drm and fb into separate menus (2014-04-17 08:10:20 +0300)
----------------------------------------------------------------
Reorder drivers/video/ directory so that all fbdev drivers are now located in
drivers/video/fbdev/ and the fbdev framework core files are located in
drivers/video/fbdev/core/
The drivers/video/Kconfig is modified so that the DRM and the fbdev menu
options are in separate submenus, instead of both being mixed in the same
'Graphics support' menu level.
----------------------------------------------------------------
Tomi Valkeinen (3):
video: move fbdev to drivers/video/fbdev
fbdev: move fbdev core files to separate directory
video: Kconfig: move drm and fb into separate menus
Documentation/DocBook/device-drivers.tmpl | 10 +-
drivers/Makefile | 4 +-
drivers/staging/xgifb/vb_def.h | 2 +-
drivers/staging/xgifb/vb_struct.h | 2 +-
drivers/staging/xgifb/vgatypes.h | 4 +-
drivers/video/Kconfig | 2480 +-------------------
drivers/video/Makefile | 166 +-
drivers/video/console/sticon.c | 2 +-
drivers/video/console/sticore.c | 2 +-
drivers/video/{ => fbdev}/68328fb.c | 0
drivers/video/fbdev/Kconfig | 2474 +++++++++++++++++++
drivers/video/fbdev/Makefile | 152 ++
drivers/video/{ => fbdev}/acornfb.c | 0
drivers/video/{ => fbdev}/acornfb.h | 0
drivers/video/{ => fbdev}/amba-clcd.c | 0
drivers/video/{ => fbdev}/amifb.c | 0
drivers/video/{ => fbdev}/arcfb.c | 0
drivers/video/{ => fbdev}/arkfb.c | 0
drivers/video/{ => fbdev}/asiliantfb.c | 0
drivers/video/{ => fbdev}/atafb.c | 0
drivers/video/{ => fbdev}/atafb.h | 0
drivers/video/{ => fbdev}/atafb_iplan2p2.c | 0
drivers/video/{ => fbdev}/atafb_iplan2p4.c | 0
drivers/video/{ => fbdev}/atafb_iplan2p8.c | 0
drivers/video/{ => fbdev}/atafb_mfb.c | 0
drivers/video/{ => fbdev}/atafb_utils.h | 0
drivers/video/{ => fbdev}/atmel_lcdfb.c | 0
drivers/video/{ => fbdev}/aty/Makefile | 0
drivers/video/{ => fbdev}/aty/ati_ids.h | 0
drivers/video/{ => fbdev}/aty/aty128fb.c | 0
drivers/video/{ => fbdev}/aty/atyfb.h | 0
drivers/video/{ => fbdev}/aty/atyfb_base.c | 0
drivers/video/{ => fbdev}/aty/mach64_accel.c | 0
drivers/video/{ => fbdev}/aty/mach64_ct.c | 0
drivers/video/{ => fbdev}/aty/mach64_cursor.c | 2 +-
drivers/video/{ => fbdev}/aty/mach64_gx.c | 0
drivers/video/{ => fbdev}/aty/radeon_accel.c | 0
drivers/video/{ => fbdev}/aty/radeon_backlight.c | 0
drivers/video/{ => fbdev}/aty/radeon_base.c | 0
drivers/video/{ => fbdev}/aty/radeon_i2c.c | 0
drivers/video/{ => fbdev}/aty/radeon_monitor.c | 0
drivers/video/{ => fbdev}/aty/radeon_pm.c | 0
drivers/video/{ => fbdev}/aty/radeonfb.h | 0
drivers/video/{ => fbdev}/au1100fb.c | 0
drivers/video/{ => fbdev}/au1100fb.h | 0
drivers/video/{ => fbdev}/au1200fb.c | 0
drivers/video/{ => fbdev}/au1200fb.h | 0
drivers/video/{ => fbdev}/auo_k1900fb.c | 0
drivers/video/{ => fbdev}/auo_k1901fb.c | 0
drivers/video/{ => fbdev}/auo_k190x.c | 0
drivers/video/{ => fbdev}/auo_k190x.h | 0
drivers/video/{ => fbdev}/bf537-lq035.c | 0
drivers/video/{ => fbdev}/bf54x-lq043fb.c | 0
drivers/video/{ => fbdev}/bfin-lq035q1-fb.c | 0
drivers/video/{ => fbdev}/bfin-t350mcqb-fb.c | 0
drivers/video/{ => fbdev}/bfin_adv7393fb.c | 0
drivers/video/{ => fbdev}/bfin_adv7393fb.h | 0
drivers/video/{ => fbdev}/broadsheetfb.c | 0
drivers/video/{ => fbdev}/bt431.h | 0
drivers/video/{ => fbdev}/bt455.h | 0
drivers/video/{ => fbdev}/bw2.c | 0
drivers/video/{ => fbdev}/c2p.h | 0
drivers/video/{ => fbdev}/c2p_core.h | 0
drivers/video/{ => fbdev}/c2p_iplan2.c | 0
drivers/video/{ => fbdev}/c2p_planar.c | 0
drivers/video/{ => fbdev}/carminefb.c | 0
drivers/video/{ => fbdev}/carminefb.h | 0
drivers/video/{ => fbdev}/carminefb_regs.h | 0
drivers/video/{ => fbdev}/cg14.c | 0
drivers/video/{ => fbdev}/cg3.c | 0
drivers/video/{ => fbdev}/cg6.c | 0
drivers/video/{ => fbdev}/chipsfb.c | 0
drivers/video/{ => fbdev}/cirrusfb.c | 0
drivers/video/{ => fbdev}/clps711xfb.c | 0
drivers/video/{ => fbdev}/cobalt_lcdfb.c | 0
drivers/video/{ => fbdev}/controlfb.c | 0
drivers/video/{ => fbdev}/controlfb.h | 0
drivers/video/fbdev/core/Makefile | 16 +
drivers/video/{ => fbdev/core}/cfbcopyarea.c | 0
drivers/video/{ => fbdev/core}/cfbfillrect.c | 0
drivers/video/{ => fbdev/core}/cfbimgblt.c | 0
drivers/video/{ => fbdev/core}/fb_ddc.c | 2 +-
drivers/video/{ => fbdev/core}/fb_defio.c | 0
drivers/video/{ => fbdev/core}/fb_draw.h | 0
drivers/video/{ => fbdev/core}/fb_notify.c | 0
drivers/video/{ => fbdev/core}/fb_sys_fops.c | 0
drivers/video/{ => fbdev/core}/fbcmap.c | 0
drivers/video/{ => fbdev/core}/fbcvt.c | 0
drivers/video/{ => fbdev/core}/fbmem.c | 0
drivers/video/{ => fbdev/core}/fbmon.c | 2 +-
drivers/video/{ => fbdev/core}/fbsysfs.c | 0
drivers/video/{ => fbdev/core}/modedb.c | 0
drivers/video/{ => fbdev/core}/svgalib.c | 0
drivers/video/{ => fbdev/core}/syscopyarea.c | 0
drivers/video/{ => fbdev/core}/sysfillrect.c | 0
drivers/video/{ => fbdev/core}/sysimgblt.c | 0
drivers/video/{ => fbdev}/cyber2000fb.c | 0
drivers/video/{ => fbdev}/cyber2000fb.h | 0
drivers/video/{ => fbdev}/da8xx-fb.c | 0
drivers/video/{ => fbdev}/dnfb.c | 0
drivers/video/{ => fbdev}/edid.h | 0
drivers/video/{ => fbdev}/efifb.c | 0
drivers/video/{ => fbdev}/ep93xx-fb.c | 0
drivers/video/{ => fbdev}/exynos/Kconfig | 0
drivers/video/{ => fbdev}/exynos/Makefile | 0
drivers/video/{ => fbdev}/exynos/exynos_mipi_dsi.c | 0
.../{ => fbdev}/exynos/exynos_mipi_dsi_common.c | 0
.../{ => fbdev}/exynos/exynos_mipi_dsi_common.h | 0
.../{ => fbdev}/exynos/exynos_mipi_dsi_lowlevel.c | 0
.../{ => fbdev}/exynos/exynos_mipi_dsi_lowlevel.h | 0
.../{ => fbdev}/exynos/exynos_mipi_dsi_regs.h | 0
drivers/video/{ => fbdev}/exynos/s6e8ax0.c | 0
drivers/video/{ => fbdev}/fb-puv3.c | 0
drivers/video/{ => fbdev}/ffb.c | 0
drivers/video/{ => fbdev}/fm2fb.c | 0
drivers/video/{ => fbdev}/fsl-diu-fb.c | 0
drivers/video/{ => fbdev}/g364fb.c | 0
drivers/video/{ => fbdev}/gbefb.c | 0
drivers/video/{ => fbdev}/geode/Kconfig | 0
drivers/video/{ => fbdev}/geode/Makefile | 0
drivers/video/{ => fbdev}/geode/display_gx.c | 0
drivers/video/{ => fbdev}/geode/display_gx1.c | 0
drivers/video/{ => fbdev}/geode/display_gx1.h | 0
drivers/video/{ => fbdev}/geode/geodefb.h | 0
drivers/video/{ => fbdev}/geode/gx1fb_core.c | 0
drivers/video/{ => fbdev}/geode/gxfb.h | 0
drivers/video/{ => fbdev}/geode/gxfb_core.c | 0
drivers/video/{ => fbdev}/geode/lxfb.h | 0
drivers/video/{ => fbdev}/geode/lxfb_core.c | 0
drivers/video/{ => fbdev}/geode/lxfb_ops.c | 0
drivers/video/{ => fbdev}/geode/suspend_gx.c | 0
drivers/video/{ => fbdev}/geode/video_cs5530.c | 0
drivers/video/{ => fbdev}/geode/video_cs5530.h | 0
drivers/video/{ => fbdev}/geode/video_gx.c | 0
drivers/video/{ => fbdev}/goldfishfb.c | 0
drivers/video/{ => fbdev}/grvga.c | 0
drivers/video/{ => fbdev}/gxt4500.c | 0
drivers/video/{ => fbdev}/hecubafb.c | 0
drivers/video/{ => fbdev}/hgafb.c | 0
drivers/video/{ => fbdev}/hitfb.c | 0
drivers/video/{ => fbdev}/hpfb.c | 0
drivers/video/{ => fbdev}/hyperv_fb.c | 0
drivers/video/{ => fbdev}/i740_reg.h | 0
drivers/video/{ => fbdev}/i740fb.c | 0
drivers/video/{ => fbdev}/i810/Makefile | 0
drivers/video/{ => fbdev}/i810/i810-i2c.c | 0
drivers/video/{ => fbdev}/i810/i810.h | 0
drivers/video/{ => fbdev}/i810/i810_accel.c | 0
drivers/video/{ => fbdev}/i810/i810_dvt.c | 0
drivers/video/{ => fbdev}/i810/i810_gtf.c | 0
drivers/video/{ => fbdev}/i810/i810_main.c | 0
drivers/video/{ => fbdev}/i810/i810_main.h | 0
drivers/video/{ => fbdev}/i810/i810_regs.h | 0
drivers/video/{ => fbdev}/igafb.c | 0
drivers/video/{ => fbdev}/imsttfb.c | 0
drivers/video/{ => fbdev}/imxfb.c | 0
drivers/video/{ => fbdev}/intelfb/Makefile | 0
drivers/video/{ => fbdev}/intelfb/intelfb.h | 0
drivers/video/{ => fbdev}/intelfb/intelfb_i2c.c | 0
drivers/video/{ => fbdev}/intelfb/intelfbdrv.c | 0
drivers/video/{ => fbdev}/intelfb/intelfbhw.c | 0
drivers/video/{ => fbdev}/intelfb/intelfbhw.h | 0
drivers/video/{ => fbdev}/jz4740_fb.c | 0
drivers/video/{ => fbdev}/kyro/Makefile | 0
drivers/video/{ => fbdev}/kyro/STG4000InitDevice.c | 0
drivers/video/{ => fbdev}/kyro/STG4000Interface.h | 0
.../video/{ => fbdev}/kyro/STG4000OverlayDevice.c | 0
drivers/video/{ => fbdev}/kyro/STG4000Ramdac.c | 0
drivers/video/{ => fbdev}/kyro/STG4000Reg.h | 0
drivers/video/{ => fbdev}/kyro/STG4000VTG.c | 0
drivers/video/{ => fbdev}/kyro/fbdev.c | 0
drivers/video/{ => fbdev}/leo.c | 0
drivers/video/{ => fbdev}/macfb.c | 0
drivers/video/{ => fbdev}/macmodes.c | 0
drivers/video/{ => fbdev}/macmodes.h | 0
drivers/video/{ => fbdev}/matrox/Makefile | 0
drivers/video/{ => fbdev}/matrox/g450_pll.c | 0
drivers/video/{ => fbdev}/matrox/g450_pll.h | 0
drivers/video/{ => fbdev}/matrox/i2c-matroxfb.c | 0
.../video/{ => fbdev}/matrox/matroxfb_DAC1064.c | 0
.../video/{ => fbdev}/matrox/matroxfb_DAC1064.h | 0
drivers/video/{ => fbdev}/matrox/matroxfb_Ti3026.c | 0
drivers/video/{ => fbdev}/matrox/matroxfb_Ti3026.h | 0
drivers/video/{ => fbdev}/matrox/matroxfb_accel.c | 0
drivers/video/{ => fbdev}/matrox/matroxfb_accel.h | 0
drivers/video/{ => fbdev}/matrox/matroxfb_base.c | 0
drivers/video/{ => fbdev}/matrox/matroxfb_base.h | 0
drivers/video/{ => fbdev}/matrox/matroxfb_crtc2.c | 0
drivers/video/{ => fbdev}/matrox/matroxfb_crtc2.h | 0
drivers/video/{ => fbdev}/matrox/matroxfb_g450.c | 0
drivers/video/{ => fbdev}/matrox/matroxfb_g450.h | 0
drivers/video/{ => fbdev}/matrox/matroxfb_maven.c | 0
drivers/video/{ => fbdev}/matrox/matroxfb_maven.h | 0
drivers/video/{ => fbdev}/matrox/matroxfb_misc.c | 0
drivers/video/{ => fbdev}/matrox/matroxfb_misc.h | 0
drivers/video/{ => fbdev}/maxinefb.c | 0
drivers/video/{ => fbdev}/mb862xx/Makefile | 0
drivers/video/{ => fbdev}/mb862xx/mb862xx-i2c.c | 0
drivers/video/{ => fbdev}/mb862xx/mb862xx_reg.h | 0
drivers/video/{ => fbdev}/mb862xx/mb862xxfb.h | 0
.../video/{ => fbdev}/mb862xx/mb862xxfb_accel.c | 0
.../video/{ => fbdev}/mb862xx/mb862xxfb_accel.h | 0
drivers/video/{ => fbdev}/mb862xx/mb862xxfbdrv.c | 0
drivers/video/{ => fbdev}/mbx/Makefile | 0
drivers/video/{ => fbdev}/mbx/mbxdebugfs.c | 0
drivers/video/{ => fbdev}/mbx/mbxfb.c | 0
drivers/video/{ => fbdev}/mbx/reg_bits.h | 0
drivers/video/{ => fbdev}/mbx/regs.h | 0
drivers/video/{ => fbdev}/metronomefb.c | 0
drivers/video/{ => fbdev}/mmp/Kconfig | 6 +-
drivers/video/{ => fbdev}/mmp/Makefile | 0
drivers/video/{ => fbdev}/mmp/core.c | 0
drivers/video/{ => fbdev}/mmp/fb/Kconfig | 0
drivers/video/{ => fbdev}/mmp/fb/Makefile | 0
drivers/video/{ => fbdev}/mmp/fb/mmpfb.c | 0
drivers/video/{ => fbdev}/mmp/fb/mmpfb.h | 0
drivers/video/{ => fbdev}/mmp/hw/Kconfig | 0
drivers/video/{ => fbdev}/mmp/hw/Makefile | 0
drivers/video/{ => fbdev}/mmp/hw/mmp_ctrl.c | 0
drivers/video/{ => fbdev}/mmp/hw/mmp_ctrl.h | 0
drivers/video/{ => fbdev}/mmp/hw/mmp_spi.c | 0
drivers/video/{ => fbdev}/mmp/panel/Kconfig | 0
drivers/video/{ => fbdev}/mmp/panel/Makefile | 0
.../video/{ => fbdev}/mmp/panel/tpo_tj032md01bw.c | 0
drivers/video/{ => fbdev}/msm/Makefile | 0
drivers/video/{ => fbdev}/msm/mddi.c | 0
drivers/video/{ => fbdev}/msm/mddi_client_dummy.c | 0
.../video/{ => fbdev}/msm/mddi_client_nt35399.c | 0
.../video/{ => fbdev}/msm/mddi_client_toshiba.c | 0
drivers/video/{ => fbdev}/msm/mddi_hw.h | 0
drivers/video/{ => fbdev}/msm/mdp.c | 0
drivers/video/{ => fbdev}/msm/mdp_csc_table.h | 0
drivers/video/{ => fbdev}/msm/mdp_hw.h | 0
drivers/video/{ => fbdev}/msm/mdp_ppp.c | 0
drivers/video/{ => fbdev}/msm/mdp_scale_tables.c | 0
drivers/video/{ => fbdev}/msm/mdp_scale_tables.h | 0
drivers/video/{ => fbdev}/msm/msm_fb.c | 0
drivers/video/{ => fbdev}/mx3fb.c | 0
drivers/video/{ => fbdev}/mxsfb.c | 0
drivers/video/{ => fbdev}/n411.c | 0
drivers/video/{ => fbdev}/neofb.c | 0
drivers/video/{ => fbdev}/nuc900fb.c | 0
drivers/video/{ => fbdev}/nuc900fb.h | 0
drivers/video/{ => fbdev}/nvidia/Makefile | 0
drivers/video/{ => fbdev}/nvidia/nv_accel.c | 0
drivers/video/{ => fbdev}/nvidia/nv_backlight.c | 0
drivers/video/{ => fbdev}/nvidia/nv_dma.h | 0
drivers/video/{ => fbdev}/nvidia/nv_hw.c | 0
drivers/video/{ => fbdev}/nvidia/nv_i2c.c | 0
drivers/video/{ => fbdev}/nvidia/nv_local.h | 0
drivers/video/{ => fbdev}/nvidia/nv_of.c | 0
drivers/video/{ => fbdev}/nvidia/nv_proto.h | 0
drivers/video/{ => fbdev}/nvidia/nv_setup.c | 0
drivers/video/{ => fbdev}/nvidia/nv_type.h | 0
drivers/video/{ => fbdev}/nvidia/nvidia.c | 0
drivers/video/{ => fbdev}/ocfb.c | 0
drivers/video/{ => fbdev}/offb.c | 0
drivers/video/{ => fbdev}/omap/Kconfig | 0
drivers/video/{ => fbdev}/omap/Makefile | 0
drivers/video/{ => fbdev}/omap/hwa742.c | 0
drivers/video/{ => fbdev}/omap/lcd_ams_delta.c | 0
drivers/video/{ => fbdev}/omap/lcd_h3.c | 0
drivers/video/{ => fbdev}/omap/lcd_htcherald.c | 0
drivers/video/{ => fbdev}/omap/lcd_inn1510.c | 0
drivers/video/{ => fbdev}/omap/lcd_inn1610.c | 0
drivers/video/{ => fbdev}/omap/lcd_mipid.c | 0
drivers/video/{ => fbdev}/omap/lcd_osk.c | 0
drivers/video/{ => fbdev}/omap/lcd_palmte.c | 0
drivers/video/{ => fbdev}/omap/lcd_palmtt.c | 0
drivers/video/{ => fbdev}/omap/lcd_palmz71.c | 0
drivers/video/{ => fbdev}/omap/lcdc.c | 0
drivers/video/{ => fbdev}/omap/lcdc.h | 0
drivers/video/{ => fbdev}/omap/omapfb.h | 0
drivers/video/{ => fbdev}/omap/omapfb_main.c | 0
drivers/video/{ => fbdev}/omap/sossi.c | 0
drivers/video/fbdev/omap2/Kconfig | 10 +
drivers/video/{ => fbdev}/omap2/Makefile | 0
.../video/{ => fbdev}/omap2/displays-new/Kconfig | 0
.../video/{ => fbdev}/omap2/displays-new/Makefile | 0
.../omap2/displays-new/connector-analog-tv.c | 0
.../{ => fbdev}/omap2/displays-new/connector-dvi.c | 0
.../omap2/displays-new/connector-hdmi.c | 0
.../omap2/displays-new/encoder-tfp410.c | 0
.../omap2/displays-new/encoder-tpd12s015.c | 0
.../{ => fbdev}/omap2/displays-new/panel-dpi.c | 0
.../{ => fbdev}/omap2/displays-new/panel-dsi-cm.c | 0
.../omap2/displays-new/panel-lgphilips-lb035q02.c | 0
.../omap2/displays-new/panel-nec-nl8048hl11.c | 0
.../omap2/displays-new/panel-sharp-ls037v7dw01.c | 0
.../omap2/displays-new/panel-sony-acx565akm.c | 0
.../omap2/displays-new/panel-tpo-td028ttec1.c | 0
.../omap2/displays-new/panel-tpo-td043mtea1.c | 0
drivers/video/{ => fbdev}/omap2/dss/Kconfig | 0
drivers/video/{ => fbdev}/omap2/dss/Makefile | 0
drivers/video/{ => fbdev}/omap2/dss/apply.c | 0
drivers/video/{ => fbdev}/omap2/dss/core.c | 0
drivers/video/{ => fbdev}/omap2/dss/dispc-compat.c | 0
drivers/video/{ => fbdev}/omap2/dss/dispc-compat.h | 0
drivers/video/{ => fbdev}/omap2/dss/dispc.c | 0
drivers/video/{ => fbdev}/omap2/dss/dispc.h | 0
drivers/video/{ => fbdev}/omap2/dss/dispc_coefs.c | 0
.../video/{ => fbdev}/omap2/dss/display-sysfs.c | 0
drivers/video/{ => fbdev}/omap2/dss/display.c | 0
drivers/video/{ => fbdev}/omap2/dss/dpi.c | 0
drivers/video/{ => fbdev}/omap2/dss/dsi.c | 0
drivers/video/{ => fbdev}/omap2/dss/dss-of.c | 0
drivers/video/{ => fbdev}/omap2/dss/dss.c | 0
drivers/video/{ => fbdev}/omap2/dss/dss.h | 0
drivers/video/{ => fbdev}/omap2/dss/dss_features.c | 0
drivers/video/{ => fbdev}/omap2/dss/dss_features.h | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi.h | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi4.c | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi4_core.c | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi4_core.h | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi_common.c | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi_phy.c | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi_pll.c | 0
drivers/video/{ => fbdev}/omap2/dss/hdmi_wp.c | 0
.../video/{ => fbdev}/omap2/dss/manager-sysfs.c | 0
drivers/video/{ => fbdev}/omap2/dss/manager.c | 0
drivers/video/{ => fbdev}/omap2/dss/output.c | 0
.../video/{ => fbdev}/omap2/dss/overlay-sysfs.c | 0
drivers/video/{ => fbdev}/omap2/dss/overlay.c | 0
drivers/video/{ => fbdev}/omap2/dss/rfbi.c | 0
drivers/video/{ => fbdev}/omap2/dss/sdi.c | 0
drivers/video/{ => fbdev}/omap2/dss/venc.c | 0
drivers/video/{ => fbdev}/omap2/dss/venc_panel.c | 0
drivers/video/{ => fbdev}/omap2/omapfb/Kconfig | 0
drivers/video/{ => fbdev}/omap2/omapfb/Makefile | 0
.../video/{ => fbdev}/omap2/omapfb/omapfb-ioctl.c | 0
.../video/{ => fbdev}/omap2/omapfb/omapfb-main.c | 0
.../video/{ => fbdev}/omap2/omapfb/omapfb-sysfs.c | 0
drivers/video/{ => fbdev}/omap2/omapfb/omapfb.h | 0
drivers/video/{ => fbdev}/omap2/vrfb.c | 0
drivers/video/{ => fbdev}/p9100.c | 0
drivers/video/{ => fbdev}/platinumfb.c | 0
drivers/video/{ => fbdev}/platinumfb.h | 0
drivers/video/{ => fbdev}/pm2fb.c | 0
drivers/video/{ => fbdev}/pm3fb.c | 0
drivers/video/{ => fbdev}/pmag-aa-fb.c | 0
drivers/video/{ => fbdev}/pmag-ba-fb.c | 0
drivers/video/{ => fbdev}/pmagb-b-fb.c | 0
drivers/video/{ => fbdev}/ps3fb.c | 0
drivers/video/{ => fbdev}/pvr2fb.c | 0
drivers/video/{ => fbdev}/pxa168fb.c | 0
drivers/video/{ => fbdev}/pxa168fb.h | 0
drivers/video/{ => fbdev}/pxa3xx-gcu.c | 0
drivers/video/{ => fbdev}/pxa3xx-gcu.h | 0
drivers/video/{ => fbdev}/pxafb.c | 0
drivers/video/{ => fbdev}/pxafb.h | 0
drivers/video/{ => fbdev}/q40fb.c | 0
drivers/video/{ => fbdev}/riva/Makefile | 0
drivers/video/{ => fbdev}/riva/fbdev.c | 0
drivers/video/{ => fbdev}/riva/nv_driver.c | 0
drivers/video/{ => fbdev}/riva/nv_type.h | 0
drivers/video/{ => fbdev}/riva/nvreg.h | 0
drivers/video/{ => fbdev}/riva/riva_hw.c | 0
drivers/video/{ => fbdev}/riva/riva_hw.h | 0
drivers/video/{ => fbdev}/riva/riva_tbl.h | 0
drivers/video/{ => fbdev}/riva/rivafb-i2c.c | 0
drivers/video/{ => fbdev}/riva/rivafb.h | 0
drivers/video/{ => fbdev}/s1d13xxxfb.c | 0
drivers/video/{ => fbdev}/s3c-fb.c | 0
drivers/video/{ => fbdev}/s3c2410fb.c | 0
drivers/video/{ => fbdev}/s3c2410fb.h | 0
drivers/video/{ => fbdev}/s3fb.c | 0
drivers/video/{ => fbdev}/sa1100fb.c | 0
drivers/video/{ => fbdev}/sa1100fb.h | 0
drivers/video/{ => fbdev}/savage/Makefile | 0
drivers/video/{ => fbdev}/savage/savagefb-i2c.c | 0
drivers/video/{ => fbdev}/savage/savagefb.h | 0
drivers/video/{ => fbdev}/savage/savagefb_accel.c | 0
drivers/video/{ => fbdev}/savage/savagefb_driver.c | 0
drivers/video/{ => fbdev}/sbuslib.c | 0
drivers/video/{ => fbdev}/sbuslib.h | 0
drivers/video/{ => fbdev}/sh7760fb.c | 0
drivers/video/{ => fbdev}/sh_mipi_dsi.c | 0
drivers/video/{ => fbdev}/sh_mobile_hdmi.c | 0
drivers/video/{ => fbdev}/sh_mobile_lcdcfb.c | 0
drivers/video/{ => fbdev}/sh_mobile_lcdcfb.h | 0
drivers/video/{ => fbdev}/sh_mobile_meram.c | 0
drivers/video/{ => fbdev}/simplefb.c | 0
drivers/video/{ => fbdev}/sis/300vtbl.h | 0
drivers/video/{ => fbdev}/sis/310vtbl.h | 0
drivers/video/{ => fbdev}/sis/Makefile | 0
drivers/video/{ => fbdev}/sis/init.c | 0
drivers/video/{ => fbdev}/sis/init.h | 0
drivers/video/{ => fbdev}/sis/init301.c | 0
drivers/video/{ => fbdev}/sis/init301.h | 0
drivers/video/{ => fbdev}/sis/initdef.h | 0
drivers/video/{ => fbdev}/sis/initextlfb.c | 0
drivers/video/{ => fbdev}/sis/oem300.h | 0
drivers/video/{ => fbdev}/sis/oem310.h | 0
drivers/video/{ => fbdev}/sis/sis.h | 0
drivers/video/{ => fbdev}/sis/sis_accel.c | 0
drivers/video/{ => fbdev}/sis/sis_accel.h | 0
drivers/video/{ => fbdev}/sis/sis_main.c | 0
drivers/video/{ => fbdev}/sis/sis_main.h | 0
drivers/video/{ => fbdev}/sis/vgatypes.h | 0
drivers/video/{ => fbdev}/sis/vstruct.h | 0
drivers/video/{ => fbdev}/skeletonfb.c | 0
drivers/video/{ => fbdev}/sm501fb.c | 0
drivers/video/{ => fbdev}/smscufx.c | 0
drivers/video/{ => fbdev}/ssd1307fb.c | 0
drivers/video/{ => fbdev}/sstfb.c | 0
drivers/video/{ => fbdev}/sticore.h | 0
drivers/video/{ => fbdev}/stifb.c | 0
drivers/video/{ => fbdev}/sunxvr1000.c | 0
drivers/video/{ => fbdev}/sunxvr2500.c | 0
drivers/video/{ => fbdev}/sunxvr500.c | 0
drivers/video/{ => fbdev}/tcx.c | 0
drivers/video/{ => fbdev}/tdfxfb.c | 0
drivers/video/{ => fbdev}/tgafb.c | 0
drivers/video/{ => fbdev}/tmiofb.c | 0
drivers/video/{ => fbdev}/tridentfb.c | 0
drivers/video/{ => fbdev}/udlfb.c | 0
drivers/video/{ => fbdev}/uvesafb.c | 0
drivers/video/{ => fbdev}/valkyriefb.c | 0
drivers/video/{ => fbdev}/valkyriefb.h | 0
drivers/video/{ => fbdev}/vermilion/Makefile | 0
drivers/video/{ => fbdev}/vermilion/cr_pll.c | 0
drivers/video/{ => fbdev}/vermilion/vermilion.c | 0
drivers/video/{ => fbdev}/vermilion/vermilion.h | 0
drivers/video/{ => fbdev}/vesafb.c | 0
drivers/video/{ => fbdev}/vfb.c | 0
drivers/video/{ => fbdev}/vga16fb.c | 0
drivers/video/{ => fbdev}/via/Makefile | 0
drivers/video/{ => fbdev}/via/accel.c | 0
drivers/video/{ => fbdev}/via/accel.h | 0
drivers/video/{ => fbdev}/via/chip.h | 0
drivers/video/{ => fbdev}/via/debug.h | 0
drivers/video/{ => fbdev}/via/dvi.c | 0
drivers/video/{ => fbdev}/via/dvi.h | 0
drivers/video/{ => fbdev}/via/global.c | 0
drivers/video/{ => fbdev}/via/global.h | 0
drivers/video/{ => fbdev}/via/hw.c | 0
drivers/video/{ => fbdev}/via/hw.h | 0
drivers/video/{ => fbdev}/via/ioctl.c | 0
drivers/video/{ => fbdev}/via/ioctl.h | 0
drivers/video/{ => fbdev}/via/lcd.c | 0
drivers/video/{ => fbdev}/via/lcd.h | 0
drivers/video/{ => fbdev}/via/share.h | 0
drivers/video/{ => fbdev}/via/tblDPASetting.c | 0
drivers/video/{ => fbdev}/via/tblDPASetting.h | 0
drivers/video/{ => fbdev}/via/via-core.c | 0
drivers/video/{ => fbdev}/via/via-gpio.c | 0
drivers/video/{ => fbdev}/via/via_aux.c | 0
drivers/video/{ => fbdev}/via/via_aux.h | 0
drivers/video/{ => fbdev}/via/via_aux_ch7301.c | 0
drivers/video/{ => fbdev}/via/via_aux_edid.c | 0
drivers/video/{ => fbdev}/via/via_aux_sii164.c | 0
drivers/video/{ => fbdev}/via/via_aux_vt1621.c | 0
drivers/video/{ => fbdev}/via/via_aux_vt1622.c | 0
drivers/video/{ => fbdev}/via/via_aux_vt1625.c | 0
drivers/video/{ => fbdev}/via/via_aux_vt1631.c | 0
drivers/video/{ => fbdev}/via/via_aux_vt1632.c | 0
drivers/video/{ => fbdev}/via/via_aux_vt1636.c | 0
drivers/video/{ => fbdev}/via/via_clock.c | 0
drivers/video/{ => fbdev}/via/via_clock.h | 0
drivers/video/{ => fbdev}/via/via_i2c.c | 0
drivers/video/{ => fbdev}/via/via_modesetting.c | 0
drivers/video/{ => fbdev}/via/via_modesetting.h | 0
drivers/video/{ => fbdev}/via/via_utility.c | 0
drivers/video/{ => fbdev}/via/via_utility.h | 0
drivers/video/{ => fbdev}/via/viafbdev.c | 0
drivers/video/{ => fbdev}/via/viafbdev.h | 0
drivers/video/{ => fbdev}/via/viamode.c | 0
drivers/video/{ => fbdev}/via/viamode.h | 0
drivers/video/{ => fbdev}/via/vt1636.c | 0
drivers/video/{ => fbdev}/via/vt1636.h | 0
drivers/video/{ => fbdev}/vt8500lcdfb.c | 0
drivers/video/{ => fbdev}/vt8500lcdfb.h | 0
drivers/video/{ => fbdev}/vt8623fb.c | 0
drivers/video/{ => fbdev}/w100fb.c | 0
drivers/video/{ => fbdev}/w100fb.h | 0
drivers/video/{ => fbdev}/wm8505fb.c | 0
drivers/video/{ => fbdev}/wm8505fb_regs.h | 0
drivers/video/{ => fbdev}/wmt_ge_rops.c | 2 +-
drivers/video/{ => fbdev}/wmt_ge_rops.h | 0
drivers/video/{ => fbdev}/xen-fbfront.c | 0
drivers/video/{ => fbdev}/xilinxfb.c | 0
drivers/video/omap2/Kconfig | 10 -
482 files changed, 2682 insertions(+), 2666 deletions(-)
rename drivers/video/{ => fbdev}/68328fb.c (100%)
create mode 100644 drivers/video/fbdev/Kconfig
create mode 100644 drivers/video/fbdev/Makefile
rename drivers/video/{ => fbdev}/acornfb.c (100%)
rename drivers/video/{ => fbdev}/acornfb.h (100%)
rename drivers/video/{ => fbdev}/amba-clcd.c (100%)
rename drivers/video/{ => fbdev}/amifb.c (100%)
rename drivers/video/{ => fbdev}/arcfb.c (100%)
rename drivers/video/{ => fbdev}/arkfb.c (100%)
rename drivers/video/{ => fbdev}/asiliantfb.c (100%)
rename drivers/video/{ => fbdev}/atafb.c (100%)
rename drivers/video/{ => fbdev}/atafb.h (100%)
rename drivers/video/{ => fbdev}/atafb_iplan2p2.c (100%)
rename drivers/video/{ => fbdev}/atafb_iplan2p4.c (100%)
rename drivers/video/{ => fbdev}/atafb_iplan2p8.c (100%)
rename drivers/video/{ => fbdev}/atafb_mfb.c (100%)
rename drivers/video/{ => fbdev}/atafb_utils.h (100%)
rename drivers/video/{ => fbdev}/atmel_lcdfb.c (100%)
rename drivers/video/{ => fbdev}/aty/Makefile (100%)
rename drivers/video/{ => fbdev}/aty/ati_ids.h (100%)
rename drivers/video/{ => fbdev}/aty/aty128fb.c (100%)
rename drivers/video/{ => fbdev}/aty/atyfb.h (100%)
rename drivers/video/{ => fbdev}/aty/atyfb_base.c (100%)
rename drivers/video/{ => fbdev}/aty/mach64_accel.c (100%)
rename drivers/video/{ => fbdev}/aty/mach64_ct.c (100%)
rename drivers/video/{ => fbdev}/aty/mach64_cursor.c (99%)
rename drivers/video/{ => fbdev}/aty/mach64_gx.c (100%)
rename drivers/video/{ => fbdev}/aty/radeon_accel.c (100%)
rename drivers/video/{ => fbdev}/aty/radeon_backlight.c (100%)
rename drivers/video/{ => fbdev}/aty/radeon_base.c (100%)
rename drivers/video/{ => fbdev}/aty/radeon_i2c.c (100%)
rename drivers/video/{ => fbdev}/aty/radeon_monitor.c (100%)
rename drivers/video/{ => fbdev}/aty/radeon_pm.c (100%)
rename drivers/video/{ => fbdev}/aty/radeonfb.h (100%)
rename drivers/video/{ => fbdev}/au1100fb.c (100%)
rename drivers/video/{ => fbdev}/au1100fb.h (100%)
rename drivers/video/{ => fbdev}/au1200fb.c (100%)
rename drivers/video/{ => fbdev}/au1200fb.h (100%)
rename drivers/video/{ => fbdev}/auo_k1900fb.c (100%)
rename drivers/video/{ => fbdev}/auo_k1901fb.c (100%)
rename drivers/video/{ => fbdev}/auo_k190x.c (100%)
rename drivers/video/{ => fbdev}/auo_k190x.h (100%)
rename drivers/video/{ => fbdev}/bf537-lq035.c (100%)
rename drivers/video/{ => fbdev}/bf54x-lq043fb.c (100%)
rename drivers/video/{ => fbdev}/bfin-lq035q1-fb.c (100%)
rename drivers/video/{ => fbdev}/bfin-t350mcqb-fb.c (100%)
rename drivers/video/{ => fbdev}/bfin_adv7393fb.c (100%)
rename drivers/video/{ => fbdev}/bfin_adv7393fb.h (100%)
rename drivers/video/{ => fbdev}/broadsheetfb.c (100%)
rename drivers/video/{ => fbdev}/bt431.h (100%)
rename drivers/video/{ => fbdev}/bt455.h (100%)
rename drivers/video/{ => fbdev}/bw2.c (100%)
rename drivers/video/{ => fbdev}/c2p.h (100%)
rename drivers/video/{ => fbdev}/c2p_core.h (100%)
rename drivers/video/{ => fbdev}/c2p_iplan2.c (100%)
rename drivers/video/{ => fbdev}/c2p_planar.c (100%)
rename drivers/video/{ => fbdev}/carminefb.c (100%)
rename drivers/video/{ => fbdev}/carminefb.h (100%)
rename drivers/video/{ => fbdev}/carminefb_regs.h (100%)
rename drivers/video/{ => fbdev}/cg14.c (100%)
rename drivers/video/{ => fbdev}/cg3.c (100%)
rename drivers/video/{ => fbdev}/cg6.c (100%)
rename drivers/video/{ => fbdev}/chipsfb.c (100%)
rename drivers/video/{ => fbdev}/cirrusfb.c (100%)
rename drivers/video/{ => fbdev}/clps711xfb.c (100%)
rename drivers/video/{ => fbdev}/cobalt_lcdfb.c (100%)
rename drivers/video/{ => fbdev}/controlfb.c (100%)
rename drivers/video/{ => fbdev}/controlfb.h (100%)
create mode 100644 drivers/video/fbdev/core/Makefile
rename drivers/video/{ => fbdev/core}/cfbcopyarea.c (100%)
rename drivers/video/{ => fbdev/core}/cfbfillrect.c (100%)
rename drivers/video/{ => fbdev/core}/cfbimgblt.c (100%)
rename drivers/video/{ => fbdev/core}/fb_ddc.c (99%)
rename drivers/video/{ => fbdev/core}/fb_defio.c (100%)
rename drivers/video/{ => fbdev/core}/fb_draw.h (100%)
rename drivers/video/{ => fbdev/core}/fb_notify.c (100%)
rename drivers/video/{ => fbdev/core}/fb_sys_fops.c (100%)
rename drivers/video/{ => fbdev/core}/fbcmap.c (100%)
rename drivers/video/{ => fbdev/core}/fbcvt.c (100%)
rename drivers/video/{ => fbdev/core}/fbmem.c (100%)
rename drivers/video/{ => fbdev/core}/fbmon.c (99%)
rename drivers/video/{ => fbdev/core}/fbsysfs.c (100%)
rename drivers/video/{ => fbdev/core}/modedb.c (100%)
rename drivers/video/{ => fbdev/core}/svgalib.c (100%)
rename drivers/video/{ => fbdev/core}/syscopyarea.c (100%)
rename drivers/video/{ => fbdev/core}/sysfillrect.c (100%)
rename drivers/video/{ => fbdev/core}/sysimgblt.c (100%)
rename drivers/video/{ => fbdev}/cyber2000fb.c (100%)
rename drivers/video/{ => fbdev}/cyber2000fb.h (100%)
rename drivers/video/{ => fbdev}/da8xx-fb.c (100%)
rename drivers/video/{ => fbdev}/dnfb.c (100%)
rename drivers/video/{ => fbdev}/edid.h (100%)
rename drivers/video/{ => fbdev}/efifb.c (100%)
rename drivers/video/{ => fbdev}/ep93xx-fb.c (100%)
rename drivers/video/{ => fbdev}/exynos/Kconfig (100%)
rename drivers/video/{ => fbdev}/exynos/Makefile (100%)
rename drivers/video/{ => fbdev}/exynos/exynos_mipi_dsi.c (100%)
rename drivers/video/{ => fbdev}/exynos/exynos_mipi_dsi_common.c (100%)
rename drivers/video/{ => fbdev}/exynos/exynos_mipi_dsi_common.h (100%)
rename drivers/video/{ => fbdev}/exynos/exynos_mipi_dsi_lowlevel.c (100%)
rename drivers/video/{ => fbdev}/exynos/exynos_mipi_dsi_lowlevel.h (100%)
rename drivers/video/{ => fbdev}/exynos/exynos_mipi_dsi_regs.h (100%)
rename drivers/video/{ => fbdev}/exynos/s6e8ax0.c (100%)
rename drivers/video/{ => fbdev}/fb-puv3.c (100%)
rename drivers/video/{ => fbdev}/ffb.c (100%)
rename drivers/video/{ => fbdev}/fm2fb.c (100%)
rename drivers/video/{ => fbdev}/fsl-diu-fb.c (100%)
rename drivers/video/{ => fbdev}/g364fb.c (100%)
rename drivers/video/{ => fbdev}/gbefb.c (100%)
rename drivers/video/{ => fbdev}/geode/Kconfig (100%)
rename drivers/video/{ => fbdev}/geode/Makefile (100%)
rename drivers/video/{ => fbdev}/geode/display_gx.c (100%)
rename drivers/video/{ => fbdev}/geode/display_gx1.c (100%)
rename drivers/video/{ => fbdev}/geode/display_gx1.h (100%)
rename drivers/video/{ => fbdev}/geode/geodefb.h (100%)
rename drivers/video/{ => fbdev}/geode/gx1fb_core.c (100%)
rename drivers/video/{ => fbdev}/geode/gxfb.h (100%)
rename drivers/video/{ => fbdev}/geode/gxfb_core.c (100%)
rename drivers/video/{ => fbdev}/geode/lxfb.h (100%)
rename drivers/video/{ => fbdev}/geode/lxfb_core.c (100%)
rename drivers/video/{ => fbdev}/geode/lxfb_ops.c (100%)
rename drivers/video/{ => fbdev}/geode/suspend_gx.c (100%)
rename drivers/video/{ => fbdev}/geode/video_cs5530.c (100%)
rename drivers/video/{ => fbdev}/geode/video_cs5530.h (100%)
rename drivers/video/{ => fbdev}/geode/video_gx.c (100%)
rename drivers/video/{ => fbdev}/goldfishfb.c (100%)
rename drivers/video/{ => fbdev}/grvga.c (100%)
rename drivers/video/{ => fbdev}/gxt4500.c (100%)
rename drivers/video/{ => fbdev}/hecubafb.c (100%)
rename drivers/video/{ => fbdev}/hgafb.c (100%)
rename drivers/video/{ => fbdev}/hitfb.c (100%)
rename drivers/video/{ => fbdev}/hpfb.c (100%)
rename drivers/video/{ => fbdev}/hyperv_fb.c (100%)
rename drivers/video/{ => fbdev}/i740_reg.h (100%)
rename drivers/video/{ => fbdev}/i740fb.c (100%)
rename drivers/video/{ => fbdev}/i810/Makefile (100%)
rename drivers/video/{ => fbdev}/i810/i810-i2c.c (100%)
rename drivers/video/{ => fbdev}/i810/i810.h (100%)
rename drivers/video/{ => fbdev}/i810/i810_accel.c (100%)
rename drivers/video/{ => fbdev}/i810/i810_dvt.c (100%)
rename drivers/video/{ => fbdev}/i810/i810_gtf.c (100%)
rename drivers/video/{ => fbdev}/i810/i810_main.c (100%)
rename drivers/video/{ => fbdev}/i810/i810_main.h (100%)
rename drivers/video/{ => fbdev}/i810/i810_regs.h (100%)
rename drivers/video/{ => fbdev}/igafb.c (100%)
rename drivers/video/{ => fbdev}/imsttfb.c (100%)
rename drivers/video/{ => fbdev}/imxfb.c (100%)
rename drivers/video/{ => fbdev}/intelfb/Makefile (100%)
rename drivers/video/{ => fbdev}/intelfb/intelfb.h (100%)
rename drivers/video/{ => fbdev}/intelfb/intelfb_i2c.c (100%)
rename drivers/video/{ => fbdev}/intelfb/intelfbdrv.c (100%)
rename drivers/video/{ => fbdev}/intelfb/intelfbhw.c (100%)
rename drivers/video/{ => fbdev}/intelfb/intelfbhw.h (100%)
rename drivers/video/{ => fbdev}/jz4740_fb.c (100%)
rename drivers/video/{ => fbdev}/kyro/Makefile (100%)
rename drivers/video/{ => fbdev}/kyro/STG4000InitDevice.c (100%)
rename drivers/video/{ => fbdev}/kyro/STG4000Interface.h (100%)
rename drivers/video/{ => fbdev}/kyro/STG4000OverlayDevice.c (100%)
rename drivers/video/{ => fbdev}/kyro/STG4000Ramdac.c (100%)
rename drivers/video/{ => fbdev}/kyro/STG4000Reg.h (100%)
rename drivers/video/{ => fbdev}/kyro/STG4000VTG.c (100%)
rename drivers/video/{ => fbdev}/kyro/fbdev.c (100%)
rename drivers/video/{ => fbdev}/leo.c (100%)
rename drivers/video/{ => fbdev}/macfb.c (100%)
rename drivers/video/{ => fbdev}/macmodes.c (100%)
rename drivers/video/{ => fbdev}/macmodes.h (100%)
rename drivers/video/{ => fbdev}/matrox/Makefile (100%)
rename drivers/video/{ => fbdev}/matrox/g450_pll.c (100%)
rename drivers/video/{ => fbdev}/matrox/g450_pll.h (100%)
rename drivers/video/{ => fbdev}/matrox/i2c-matroxfb.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_DAC1064.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_DAC1064.h (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_Ti3026.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_Ti3026.h (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_accel.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_accel.h (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_base.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_base.h (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_crtc2.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_crtc2.h (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_g450.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_g450.h (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_maven.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_maven.h (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_misc.c (100%)
rename drivers/video/{ => fbdev}/matrox/matroxfb_misc.h (100%)
rename drivers/video/{ => fbdev}/maxinefb.c (100%)
rename drivers/video/{ => fbdev}/mb862xx/Makefile (100%)
rename drivers/video/{ => fbdev}/mb862xx/mb862xx-i2c.c (100%)
rename drivers/video/{ => fbdev}/mb862xx/mb862xx_reg.h (100%)
rename drivers/video/{ => fbdev}/mb862xx/mb862xxfb.h (100%)
rename drivers/video/{ => fbdev}/mb862xx/mb862xxfb_accel.c (100%)
rename drivers/video/{ => fbdev}/mb862xx/mb862xxfb_accel.h (100%)
rename drivers/video/{ => fbdev}/mb862xx/mb862xxfbdrv.c (100%)
rename drivers/video/{ => fbdev}/mbx/Makefile (100%)
rename drivers/video/{ => fbdev}/mbx/mbxdebugfs.c (100%)
rename drivers/video/{ => fbdev}/mbx/mbxfb.c (100%)
rename drivers/video/{ => fbdev}/mbx/reg_bits.h (100%)
rename drivers/video/{ => fbdev}/mbx/regs.h (100%)
rename drivers/video/{ => fbdev}/metronomefb.c (100%)
rename drivers/video/{ => fbdev}/mmp/Kconfig (61%)
rename drivers/video/{ => fbdev}/mmp/Makefile (100%)
rename drivers/video/{ => fbdev}/mmp/core.c (100%)
rename drivers/video/{ => fbdev}/mmp/fb/Kconfig (100%)
rename drivers/video/{ => fbdev}/mmp/fb/Makefile (100%)
rename drivers/video/{ => fbdev}/mmp/fb/mmpfb.c (100%)
rename drivers/video/{ => fbdev}/mmp/fb/mmpfb.h (100%)
rename drivers/video/{ => fbdev}/mmp/hw/Kconfig (100%)
rename drivers/video/{ => fbdev}/mmp/hw/Makefile (100%)
rename drivers/video/{ => fbdev}/mmp/hw/mmp_ctrl.c (100%)
rename drivers/video/{ => fbdev}/mmp/hw/mmp_ctrl.h (100%)
rename drivers/video/{ => fbdev}/mmp/hw/mmp_spi.c (100%)
rename drivers/video/{ => fbdev}/mmp/panel/Kconfig (100%)
rename drivers/video/{ => fbdev}/mmp/panel/Makefile (100%)
rename drivers/video/{ => fbdev}/mmp/panel/tpo_tj032md01bw.c (100%)
rename drivers/video/{ => fbdev}/msm/Makefile (100%)
rename drivers/video/{ => fbdev}/msm/mddi.c (100%)
rename drivers/video/{ => fbdev}/msm/mddi_client_dummy.c (100%)
rename drivers/video/{ => fbdev}/msm/mddi_client_nt35399.c (100%)
rename drivers/video/{ => fbdev}/msm/mddi_client_toshiba.c (100%)
rename drivers/video/{ => fbdev}/msm/mddi_hw.h (100%)
rename drivers/video/{ => fbdev}/msm/mdp.c (100%)
rename drivers/video/{ => fbdev}/msm/mdp_csc_table.h (100%)
rename drivers/video/{ => fbdev}/msm/mdp_hw.h (100%)
rename drivers/video/{ => fbdev}/msm/mdp_ppp.c (100%)
rename drivers/video/{ => fbdev}/msm/mdp_scale_tables.c (100%)
rename drivers/video/{ => fbdev}/msm/mdp_scale_tables.h (100%)
rename drivers/video/{ => fbdev}/msm/msm_fb.c (100%)
rename drivers/video/{ => fbdev}/mx3fb.c (100%)
rename drivers/video/{ => fbdev}/mxsfb.c (100%)
rename drivers/video/{ => fbdev}/n411.c (100%)
rename drivers/video/{ => fbdev}/neofb.c (100%)
rename drivers/video/{ => fbdev}/nuc900fb.c (100%)
rename drivers/video/{ => fbdev}/nuc900fb.h (100%)
rename drivers/video/{ => fbdev}/nvidia/Makefile (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_accel.c (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_backlight.c (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_dma.h (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_hw.c (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_i2c.c (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_local.h (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_of.c (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_proto.h (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_setup.c (100%)
rename drivers/video/{ => fbdev}/nvidia/nv_type.h (100%)
rename drivers/video/{ => fbdev}/nvidia/nvidia.c (100%)
rename drivers/video/{ => fbdev}/ocfb.c (100%)
rename drivers/video/{ => fbdev}/offb.c (100%)
rename drivers/video/{ => fbdev}/omap/Kconfig (100%)
rename drivers/video/{ => fbdev}/omap/Makefile (100%)
rename drivers/video/{ => fbdev}/omap/hwa742.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_ams_delta.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_h3.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_htcherald.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_inn1510.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_inn1610.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_mipid.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_osk.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_palmte.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_palmtt.c (100%)
rename drivers/video/{ => fbdev}/omap/lcd_palmz71.c (100%)
rename drivers/video/{ => fbdev}/omap/lcdc.c (100%)
rename drivers/video/{ => fbdev}/omap/lcdc.h (100%)
rename drivers/video/{ => fbdev}/omap/omapfb.h (100%)
rename drivers/video/{ => fbdev}/omap/omapfb_main.c (100%)
rename drivers/video/{ => fbdev}/omap/sossi.c (100%)
create mode 100644 drivers/video/fbdev/omap2/Kconfig
rename drivers/video/{ => fbdev}/omap2/Makefile (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/Kconfig (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/Makefile (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/connector-analog-tv.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/connector-dvi.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/connector-hdmi.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/encoder-tfp410.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/encoder-tpd12s015.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-dpi.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-dsi-cm.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-lgphilips-lb035q02.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-nec-nl8048hl11.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-sharp-ls037v7dw01.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-sony-acx565akm.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-tpo-td028ttec1.c (100%)
rename drivers/video/{ => fbdev}/omap2/displays-new/panel-tpo-td043mtea1.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/Kconfig (100%)
rename drivers/video/{ => fbdev}/omap2/dss/Makefile (100%)
rename drivers/video/{ => fbdev}/omap2/dss/apply.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/core.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dispc-compat.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dispc-compat.h (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dispc.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dispc.h (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dispc_coefs.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/display-sysfs.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/display.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dpi.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dsi.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dss-of.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dss.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dss.h (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dss_features.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/dss_features.h (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi.h (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi4.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi4_core.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi4_core.h (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi_common.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi_phy.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi_pll.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/hdmi_wp.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/manager-sysfs.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/manager.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/output.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/overlay-sysfs.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/overlay.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/rfbi.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/sdi.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/venc.c (100%)
rename drivers/video/{ => fbdev}/omap2/dss/venc_panel.c (100%)
rename drivers/video/{ => fbdev}/omap2/omapfb/Kconfig (100%)
rename drivers/video/{ => fbdev}/omap2/omapfb/Makefile (100%)
rename drivers/video/{ => fbdev}/omap2/omapfb/omapfb-ioctl.c (100%)
rename drivers/video/{ => fbdev}/omap2/omapfb/omapfb-main.c (100%)
rename drivers/video/{ => fbdev}/omap2/omapfb/omapfb-sysfs.c (100%)
rename drivers/video/{ => fbdev}/omap2/omapfb/omapfb.h (100%)
rename drivers/video/{ => fbdev}/omap2/vrfb.c (100%)
rename drivers/video/{ => fbdev}/p9100.c (100%)
rename drivers/video/{ => fbdev}/platinumfb.c (100%)
rename drivers/video/{ => fbdev}/platinumfb.h (100%)
rename drivers/video/{ => fbdev}/pm2fb.c (100%)
rename drivers/video/{ => fbdev}/pm3fb.c (100%)
rename drivers/video/{ => fbdev}/pmag-aa-fb.c (100%)
rename drivers/video/{ => fbdev}/pmag-ba-fb.c (100%)
rename drivers/video/{ => fbdev}/pmagb-b-fb.c (100%)
rename drivers/video/{ => fbdev}/ps3fb.c (100%)
rename drivers/video/{ => fbdev}/pvr2fb.c (100%)
rename drivers/video/{ => fbdev}/pxa168fb.c (100%)
rename drivers/video/{ => fbdev}/pxa168fb.h (100%)
rename drivers/video/{ => fbdev}/pxa3xx-gcu.c (100%)
rename drivers/video/{ => fbdev}/pxa3xx-gcu.h (100%)
rename drivers/video/{ => fbdev}/pxafb.c (100%)
rename drivers/video/{ => fbdev}/pxafb.h (100%)
rename drivers/video/{ => fbdev}/q40fb.c (100%)
rename drivers/video/{ => fbdev}/riva/Makefile (100%)
rename drivers/video/{ => fbdev}/riva/fbdev.c (100%)
rename drivers/video/{ => fbdev}/riva/nv_driver.c (100%)
rename drivers/video/{ => fbdev}/riva/nv_type.h (100%)
rename drivers/video/{ => fbdev}/riva/nvreg.h (100%)
rename drivers/video/{ => fbdev}/riva/riva_hw.c (100%)
rename drivers/video/{ => fbdev}/riva/riva_hw.h (100%)
rename drivers/video/{ => fbdev}/riva/riva_tbl.h (100%)
rename drivers/video/{ => fbdev}/riva/rivafb-i2c.c (100%)
rename drivers/video/{ => fbdev}/riva/rivafb.h (100%)
rename drivers/video/{ => fbdev}/s1d13xxxfb.c (100%)
rename drivers/video/{ => fbdev}/s3c-fb.c (100%)
rename drivers/video/{ => fbdev}/s3c2410fb.c (100%)
rename drivers/video/{ => fbdev}/s3c2410fb.h (100%)
rename drivers/video/{ => fbdev}/s3fb.c (100%)
rename drivers/video/{ => fbdev}/sa1100fb.c (100%)
rename drivers/video/{ => fbdev}/sa1100fb.h (100%)
rename drivers/video/{ => fbdev}/savage/Makefile (100%)
rename drivers/video/{ => fbdev}/savage/savagefb-i2c.c (100%)
rename drivers/video/{ => fbdev}/savage/savagefb.h (100%)
rename drivers/video/{ => fbdev}/savage/savagefb_accel.c (100%)
rename drivers/video/{ => fbdev}/savage/savagefb_driver.c (100%)
rename drivers/video/{ => fbdev}/sbuslib.c (100%)
rename drivers/video/{ => fbdev}/sbuslib.h (100%)
rename drivers/video/{ => fbdev}/sh7760fb.c (100%)
rename drivers/video/{ => fbdev}/sh_mipi_dsi.c (100%)
rename drivers/video/{ => fbdev}/sh_mobile_hdmi.c (100%)
rename drivers/video/{ => fbdev}/sh_mobile_lcdcfb.c (100%)
rename drivers/video/{ => fbdev}/sh_mobile_lcdcfb.h (100%)
rename drivers/video/{ => fbdev}/sh_mobile_meram.c (100%)
rename drivers/video/{ => fbdev}/simplefb.c (100%)
rename drivers/video/{ => fbdev}/sis/300vtbl.h (100%)
rename drivers/video/{ => fbdev}/sis/310vtbl.h (100%)
rename drivers/video/{ => fbdev}/sis/Makefile (100%)
rename drivers/video/{ => fbdev}/sis/init.c (100%)
rename drivers/video/{ => fbdev}/sis/init.h (100%)
rename drivers/video/{ => fbdev}/sis/init301.c (100%)
rename drivers/video/{ => fbdev}/sis/init301.h (100%)
rename drivers/video/{ => fbdev}/sis/initdef.h (100%)
rename drivers/video/{ => fbdev}/sis/initextlfb.c (100%)
rename drivers/video/{ => fbdev}/sis/oem300.h (100%)
rename drivers/video/{ => fbdev}/sis/oem310.h (100%)
rename drivers/video/{ => fbdev}/sis/sis.h (100%)
rename drivers/video/{ => fbdev}/sis/sis_accel.c (100%)
rename drivers/video/{ => fbdev}/sis/sis_accel.h (100%)
rename drivers/video/{ => fbdev}/sis/sis_main.c (100%)
rename drivers/video/{ => fbdev}/sis/sis_main.h (100%)
rename drivers/video/{ => fbdev}/sis/vgatypes.h (100%)
rename drivers/video/{ => fbdev}/sis/vstruct.h (100%)
rename drivers/video/{ => fbdev}/skeletonfb.c (100%)
rename drivers/video/{ => fbdev}/sm501fb.c (100%)
rename drivers/video/{ => fbdev}/smscufx.c (100%)
rename drivers/video/{ => fbdev}/ssd1307fb.c (100%)
rename drivers/video/{ => fbdev}/sstfb.c (100%)
rename drivers/video/{ => fbdev}/sticore.h (100%)
rename drivers/video/{ => fbdev}/stifb.c (100%)
rename drivers/video/{ => fbdev}/sunxvr1000.c (100%)
rename drivers/video/{ => fbdev}/sunxvr2500.c (100%)
rename drivers/video/{ => fbdev}/sunxvr500.c (100%)
rename drivers/video/{ => fbdev}/tcx.c (100%)
rename drivers/video/{ => fbdev}/tdfxfb.c (100%)
rename drivers/video/{ => fbdev}/tgafb.c (100%)
rename drivers/video/{ => fbdev}/tmiofb.c (100%)
rename drivers/video/{ => fbdev}/tridentfb.c (100%)
rename drivers/video/{ => fbdev}/udlfb.c (100%)
rename drivers/video/{ => fbdev}/uvesafb.c (100%)
rename drivers/video/{ => fbdev}/valkyriefb.c (100%)
rename drivers/video/{ => fbdev}/valkyriefb.h (100%)
rename drivers/video/{ => fbdev}/vermilion/Makefile (100%)
rename drivers/video/{ => fbdev}/vermilion/cr_pll.c (100%)
rename drivers/video/{ => fbdev}/vermilion/vermilion.c (100%)
rename drivers/video/{ => fbdev}/vermilion/vermilion.h (100%)
rename drivers/video/{ => fbdev}/vesafb.c (100%)
rename drivers/video/{ => fbdev}/vfb.c (100%)
rename drivers/video/{ => fbdev}/vga16fb.c (100%)
rename drivers/video/{ => fbdev}/via/Makefile (100%)
rename drivers/video/{ => fbdev}/via/accel.c (100%)
rename drivers/video/{ => fbdev}/via/accel.h (100%)
rename drivers/video/{ => fbdev}/via/chip.h (100%)
rename drivers/video/{ => fbdev}/via/debug.h (100%)
rename drivers/video/{ => fbdev}/via/dvi.c (100%)
rename drivers/video/{ => fbdev}/via/dvi.h (100%)
rename drivers/video/{ => fbdev}/via/global.c (100%)
rename drivers/video/{ => fbdev}/via/global.h (100%)
rename drivers/video/{ => fbdev}/via/hw.c (100%)
rename drivers/video/{ => fbdev}/via/hw.h (100%)
rename drivers/video/{ => fbdev}/via/ioctl.c (100%)
rename drivers/video/{ => fbdev}/via/ioctl.h (100%)
rename drivers/video/{ => fbdev}/via/lcd.c (100%)
rename drivers/video/{ => fbdev}/via/lcd.h (100%)
rename drivers/video/{ => fbdev}/via/share.h (100%)
rename drivers/video/{ => fbdev}/via/tblDPASetting.c (100%)
rename drivers/video/{ => fbdev}/via/tblDPASetting.h (100%)
rename drivers/video/{ => fbdev}/via/via-core.c (100%)
rename drivers/video/{ => fbdev}/via/via-gpio.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux.h (100%)
rename drivers/video/{ => fbdev}/via/via_aux_ch7301.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_edid.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_sii164.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_vt1621.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_vt1622.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_vt1625.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_vt1631.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_vt1632.c (100%)
rename drivers/video/{ => fbdev}/via/via_aux_vt1636.c (100%)
rename drivers/video/{ => fbdev}/via/via_clock.c (100%)
rename drivers/video/{ => fbdev}/via/via_clock.h (100%)
rename drivers/video/{ => fbdev}/via/via_i2c.c (100%)
rename drivers/video/{ => fbdev}/via/via_modesetting.c (100%)
rename drivers/video/{ => fbdev}/via/via_modesetting.h (100%)
rename drivers/video/{ => fbdev}/via/via_utility.c (100%)
rename drivers/video/{ => fbdev}/via/via_utility.h (100%)
rename drivers/video/{ => fbdev}/via/viafbdev.c (100%)
rename drivers/video/{ => fbdev}/via/viafbdev.h (100%)
rename drivers/video/{ => fbdev}/via/viamode.c (100%)
rename drivers/video/{ => fbdev}/via/viamode.h (100%)
rename drivers/video/{ => fbdev}/via/vt1636.c (100%)
rename drivers/video/{ => fbdev}/via/vt1636.h (100%)
rename drivers/video/{ => fbdev}/vt8500lcdfb.c (100%)
rename drivers/video/{ => fbdev}/vt8500lcdfb.h (100%)
rename drivers/video/{ => fbdev}/vt8623fb.c (100%)
rename drivers/video/{ => fbdev}/w100fb.c (100%)
rename drivers/video/{ => fbdev}/w100fb.h (100%)
rename drivers/video/{ => fbdev}/wm8505fb.c (100%)
rename drivers/video/{ => fbdev}/wm8505fb_regs.h (100%)
rename drivers/video/{ => fbdev}/wmt_ge_rops.c (99%)
rename drivers/video/{ => fbdev}/wmt_ge_rops.h (100%)
rename drivers/video/{ => fbdev}/xen-fbfront.c (100%)
rename drivers/video/{ => fbdev}/xilinxfb.c (100%)
delete mode 100644 drivers/video/omap2/Kconfig
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 836 bytes --]
^ permalink raw reply
* [patch added to the 3.12 stable tree] video/fb: Propagate error code from failing to unregister conf
From: Jiri Slaby @ 2014-04-18 9:07 UTC (permalink / raw)
To: stable
Cc: Chris Wilson, Jean-Christophe Plagniol-Villard, Tomi Valkeinen,
linux-fbdev, dri-devel, Dave Airlie, Jiri Slaby
In-Reply-To: <1397812087-13168-1-git-send-email-jslaby@suse.cz>
From: Chris Wilson <chris@chris-wilson.co.uk>
This patch has been added to the 3.12 stable tree. If you have any
objections, please let us know.
=======
commit 46eeb2c144956e88197439b5ee5cf221a91b0a81 upstream.
If we fail to remove a conflicting fb driver, we need to abort the
loading of the second driver to avoid likely kernel panics.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
drivers/video/fbmem.c | 31 +++++++++++++++++++++----------
include/linux/fb.h | 4 ++--
2 files changed, 23 insertions(+), 12 deletions(-)
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
index cde461932760..7309ac704e26 100644
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -1577,10 +1577,10 @@ static bool fb_do_apertures_overlap(struct apertures_struct *gena,
static int do_unregister_framebuffer(struct fb_info *fb_info);
#define VGA_FB_PHYS 0xA0000
-static void do_remove_conflicting_framebuffers(struct apertures_struct *a,
- const char *name, bool primary)
+static int do_remove_conflicting_framebuffers(struct apertures_struct *a,
+ const char *name, bool primary)
{
- int i;
+ int i, ret;
/* check all firmware fbs and kick off if the base addr overlaps */
for (i = 0 ; i < FB_MAX; i++) {
@@ -1599,22 +1599,29 @@ static void do_remove_conflicting_framebuffers(struct apertures_struct *a,
printk(KERN_INFO "fb: conflicting fb hw usage "
"%s vs %s - removing generic driver\n",
name, registered_fb[i]->fix.id);
- do_unregister_framebuffer(registered_fb[i]);
+ ret = do_unregister_framebuffer(registered_fb[i]);
+ if (ret)
+ return ret;
}
}
+
+ return 0;
}
static int do_register_framebuffer(struct fb_info *fb_info)
{
- int i;
+ int i, ret;
struct fb_event event;
struct fb_videomode mode;
if (fb_check_foreignness(fb_info))
return -ENOSYS;
- do_remove_conflicting_framebuffers(fb_info->apertures, fb_info->fix.id,
- fb_is_primary_device(fb_info));
+ ret = do_remove_conflicting_framebuffers(fb_info->apertures,
+ fb_info->fix.id,
+ fb_is_primary_device(fb_info));
+ if (ret)
+ return ret;
if (num_registered_fb = FB_MAX)
return -ENXIO;
@@ -1739,12 +1746,16 @@ int unlink_framebuffer(struct fb_info *fb_info)
}
EXPORT_SYMBOL(unlink_framebuffer);
-void remove_conflicting_framebuffers(struct apertures_struct *a,
- const char *name, bool primary)
+int remove_conflicting_framebuffers(struct apertures_struct *a,
+ const char *name, bool primary)
{
+ int ret;
+
mutex_lock(®istration_lock);
- do_remove_conflicting_framebuffers(a, name, primary);
+ ret = do_remove_conflicting_framebuffers(a, name, primary);
mutex_unlock(®istration_lock);
+
+ return ret;
}
EXPORT_SYMBOL(remove_conflicting_framebuffers);
diff --git a/include/linux/fb.h b/include/linux/fb.h
index ffac70aab3e9..8439a1600c1a 100644
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
@@ -613,8 +613,8 @@ extern ssize_t fb_sys_write(struct fb_info *info, const char __user *buf,
extern int register_framebuffer(struct fb_info *fb_info);
extern int unregister_framebuffer(struct fb_info *fb_info);
extern int unlink_framebuffer(struct fb_info *fb_info);
-extern void remove_conflicting_framebuffers(struct apertures_struct *a,
- const char *name, bool primary);
+extern int remove_conflicting_framebuffers(struct apertures_struct *a,
+ const char *name, bool primary);
extern int fb_prepare_logo(struct fb_info *fb_info, int rotate);
extern int fb_show_logo(struct fb_info *fb_info, int rotate);
extern char* fb_get_buffer_offset(struct fb_info *info, struct fb_pixmap *buf, u32 size);
--
1.9.2
^ permalink raw reply related
* [PATCH 3.12 20/72] video/fb: Propagate error code from failing to unregister conflicting fb
From: Jiri Slaby @ 2014-04-18 9:21 UTC (permalink / raw)
To: stable
Cc: linux-fbdev, Jiri Slaby, linux-kernel, dri-devel, Tomi Valkeinen,
Dave Airlie, Jean-Christophe Plagniol-Villard
In-Reply-To: <3389f243c528afc7c7300c83b8f296290cd3656d.1397812482.git.jslaby@suse.cz>
From: Chris Wilson <chris@chris-wilson.co.uk>
3.12-stable review patch. If anyone has any objections, please let me know.
=======
commit 46eeb2c144956e88197439b5ee5cf221a91b0a81 upstream.
If we fail to remove a conflicting fb driver, we need to abort the
loading of the second driver to avoid likely kernel panics.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: linux-fbdev@vger.kernel.org
Cc: dri-devel@lists.freedesktop.org
Reviewed-by: Jani Nikula <jani.nikula@intel.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
drivers/video/fbmem.c | 31 +++++++++++++++++++++----------
include/linux/fb.h | 4 ++--
2 files changed, 23 insertions(+), 12 deletions(-)
diff --git a/drivers/video/fbmem.c b/drivers/video/fbmem.c
index cde461932760..7309ac704e26 100644
--- a/drivers/video/fbmem.c
+++ b/drivers/video/fbmem.c
@@ -1577,10 +1577,10 @@ static bool fb_do_apertures_overlap(struct apertures_struct *gena,
static int do_unregister_framebuffer(struct fb_info *fb_info);
#define VGA_FB_PHYS 0xA0000
-static void do_remove_conflicting_framebuffers(struct apertures_struct *a,
- const char *name, bool primary)
+static int do_remove_conflicting_framebuffers(struct apertures_struct *a,
+ const char *name, bool primary)
{
- int i;
+ int i, ret;
/* check all firmware fbs and kick off if the base addr overlaps */
for (i = 0 ; i < FB_MAX; i++) {
@@ -1599,22 +1599,29 @@ static void do_remove_conflicting_framebuffers(struct apertures_struct *a,
printk(KERN_INFO "fb: conflicting fb hw usage "
"%s vs %s - removing generic driver\n",
name, registered_fb[i]->fix.id);
- do_unregister_framebuffer(registered_fb[i]);
+ ret = do_unregister_framebuffer(registered_fb[i]);
+ if (ret)
+ return ret;
}
}
+
+ return 0;
}
static int do_register_framebuffer(struct fb_info *fb_info)
{
- int i;
+ int i, ret;
struct fb_event event;
struct fb_videomode mode;
if (fb_check_foreignness(fb_info))
return -ENOSYS;
- do_remove_conflicting_framebuffers(fb_info->apertures, fb_info->fix.id,
- fb_is_primary_device(fb_info));
+ ret = do_remove_conflicting_framebuffers(fb_info->apertures,
+ fb_info->fix.id,
+ fb_is_primary_device(fb_info));
+ if (ret)
+ return ret;
if (num_registered_fb = FB_MAX)
return -ENXIO;
@@ -1739,12 +1746,16 @@ int unlink_framebuffer(struct fb_info *fb_info)
}
EXPORT_SYMBOL(unlink_framebuffer);
-void remove_conflicting_framebuffers(struct apertures_struct *a,
- const char *name, bool primary)
+int remove_conflicting_framebuffers(struct apertures_struct *a,
+ const char *name, bool primary)
{
+ int ret;
+
mutex_lock(®istration_lock);
- do_remove_conflicting_framebuffers(a, name, primary);
+ ret = do_remove_conflicting_framebuffers(a, name, primary);
mutex_unlock(®istration_lock);
+
+ return ret;
}
EXPORT_SYMBOL(remove_conflicting_framebuffers);
diff --git a/include/linux/fb.h b/include/linux/fb.h
index ffac70aab3e9..8439a1600c1a 100644
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
@@ -613,8 +613,8 @@ extern ssize_t fb_sys_write(struct fb_info *info, const char __user *buf,
extern int register_framebuffer(struct fb_info *fb_info);
extern int unregister_framebuffer(struct fb_info *fb_info);
extern int unlink_framebuffer(struct fb_info *fb_info);
-extern void remove_conflicting_framebuffers(struct apertures_struct *a,
- const char *name, bool primary);
+extern int remove_conflicting_framebuffers(struct apertures_struct *a,
+ const char *name, bool primary);
extern int fb_prepare_logo(struct fb_info *fb_info, int rotate);
extern int fb_show_logo(struct fb_info *fb_info, int rotate);
extern char* fb_get_buffer_offset(struct fb_info *info, struct fb_pixmap *buf, u32 size);
--
1.9.2
^ permalink raw reply related
* Re: [PATCH] fbdev: fix possible NULL pointer derefernce
From: DaeSeok Youn @ 2014-04-18 10:31 UTC (permalink / raw)
To: Jean-Christophe PLAGNIOL-VILLARD
Cc: tomi.valkeinen, jg1.han, laurent.pinchart, Rob Clark, linux-fbdev,
linux-kernel
In-Reply-To: <CAHb8M2BdDUJBOsFdDXOKSo2p+=_Gb4Ha92UMa5K6wMyg3KKdmw@mail.gmail.com>
Hello,
2014-04-17 9:00 GMT+09:00 DaeSeok Youn <daeseok.youn@gmail.com>:
> Hello,
>
> 2014-04-16 21:38 GMT+09:00 Jean-Christophe PLAGNIOL-VILLARD
> <plagnioj@jcrosoft.com>:
>>
>> On Apr 16, 2014, at 5:40 PM, Daeseok Youn <daeseok.youn@gmail.com> wrote:
>>
>>>
>>> The spec->modedb can be NULL by fb_create_modedb().
>>>
>>> And also smatch says:
>>> drivers/video/fbdev/core/fbmon.c:975 fb_edid_to_monspecs() error:
>>> potential null dereference 'specs->modedb'.
>>> (fb_create_modedb returns null)
>>>
>>> Signed-off-by: Daeseok Youn <daeseok.youn@gmail.com>
>>> ---
>>> drivers/video/fbdev/core/fbmon.c | 3 +++
>>> 1 files changed, 3 insertions(+), 0 deletions(-)
>>>
>>> diff --git a/drivers/video/fbdev/core/fbmon.c b/drivers/video/fbdev/core/fbmon.c
>>> index c204ebe..db274ca 100644
>>> --- a/drivers/video/fbdev/core/fbmon.c
>>> +++ b/drivers/video/fbdev/core/fbmon.c
>>> @@ -966,6 +966,9 @@ void fb_edid_to_monspecs(unsigned char *edid, struct fb_monspecs *specs)
>>>
>>> specs->modedb = fb_create_modedb(edid, &specs->modedb_len);
>>>
>>> + if (!specs->modedb)
>>> + return;
>>> +
>>
>> we need to return an error and trace it
> Yes, you're right. I will change return type from void to int and add
> to handle an error when this function(fb_edid_to_monspecs) is called.
>
I try to look at the fbdev code related with fb_edid_to_monspecs().
And the result, I think it doesn't need to return an error and trace it.
My patch is also useless because modedb_len is zero when
fb_create_modedb() returns NULL so It cannot be dereferenced.
And callers of this function seem to need a log but I think they don't need to
handling an error. Some functions are handling error with checking
NULL of modedb variable,
they are just printing an error message.
If I am wrong or you have reasons for handling an error on that
function, please let me know.
Regards,
Daeseok Youn.
> I will send this patch as your comment.
>
> Thanks for review.
>
> Daeseok Youn.
>>
>> Best Regards,
>> J.
>>> /*
>>> * Workaround for buggy EDIDs that sets that the first
>>> * detailed timing is preferred but has not detailed
>>> --
>>> 1.7.4.4
>>>
>>
^ permalink raw reply
* Re: [PATCHv3 19/41] OMAPDSS: panel-dpi: Add DT support
From: Tony Lindgren @ 2014-04-18 15:51 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1390301833-24944-20-git-send-email-tomi.valkeinen@ti.com>
Hi,
Just trying to summarize what has been discussed so far in
various threads regarding changes needed to this patch.
* Tomi Valkeinen <tomi.valkeinen@ti.com> [140121 03:01]:
> --- a/drivers/video/omap2/displays-new/panel-dpi.c
> +++ b/drivers/video/omap2/displays-new/panel-dpi.c
> @@ -182,6 +186,52 @@ static int panel_dpi_probe_pdata(struct platform_device *pdev)
> return 0;
> }
>
> +static int panel_dpi_probe_of(struct platform_device *pdev)
> +{
> + struct panel_drv_data *ddata = platform_get_drvdata(pdev);
> + struct device_node *node = pdev->dev.of_node;
> + struct omap_dss_device *in;
> + int r;
> + struct display_timing timing;
> + struct videomode vm;
> + int gpio;
> +
> + gpio = of_get_gpio(node, 0);
> + if (gpio_is_valid(gpio) || gpio = -ENOENT) {
> + ddata->enable_gpio = gpio;
> + } else {
> + dev_err(&pdev->dev, "failed to parse enable gpio\n");
> + return gpio;
> + }
We should set the GPIO polarity based on the OF_GPIO_ACTIVE_LOW like
gpio_backlight_probe_dt is doing.
Then do we really want to do the dev_err for each -EPROBE_DEFER here?
> + gpio = of_get_gpio(node, 1);
> + if (gpio_is_valid(gpio) || gpio = -ENOENT) {
> + ddata->backlight_gpio = gpio;
> + } else {
> + dev_err(&pdev->dev, "failed to parse backlight gpio\n");
> + return gpio;
> + }
How about let's drop the backlight_gpio as discussed since it
can be handled with gpio-backlight?
Instead, let's add the panel specific reset_gpio as suggested by
Joachim. That seems common to some dpi using panels.
Then support for the other panel specific GPIOs can then be added
as a follow-up patch when we know how we want to handle them.
Oh, and this patch needs the related binding documentation too in
Documentation/devicetree/bindings.
Regards,
Tony
^ permalink raw reply
* [PATCH 0/2] Add display support for gta04 device
From: Marek Belisko @ 2014-04-22 21:12 UTC (permalink / raw)
To: linux-arm-kernel
This 2 patches adding display support for openmoko gta04 device.
First patch add DT bindings for topolly td028 panel and second add description for
dss + panel.
Marek Belisko (2):
omapdss: panel-tpo-td028ec1: Add DT support.
ARM: dts: oma3-gta04: Add display support
.../bindings/video/toppoly,td028ttec1.txt | 30 ++++++++
arch/arm/boot/dts/omap3-gta04.dts | 86 ++++++++++++++++++++++
.../omap2/displays-new/panel-tpo-td028ttec1.c | 32 +++++++-
3 files changed, 147 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/video/toppoly,td028ttec1.txt
--
1.8.3.2
^ permalink raw reply
* [PATCH 1/2] omapdss: panel-tpo-td028ec1: Add DT support.
From: Marek Belisko @ 2014-04-22 21:12 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1398201168-25275-1-git-send-email-marek@goldelico.com>
Signed-off-by: Marek Belisko <marek@goldelico.com>
---
.../bindings/video/toppoly,td028ttec1.txt | 30 ++++++++++++++++++++
.../omap2/displays-new/panel-tpo-td028ttec1.c | 32 +++++++++++++++++++++-
2 files changed, 61 insertions(+), 1 deletion(-)
create mode 100644 Documentation/devicetree/bindings/video/toppoly,td028ttec1.txt
diff --git a/Documentation/devicetree/bindings/video/toppoly,td028ttec1.txt b/Documentation/devicetree/bindings/video/toppoly,td028ttec1.txt
new file mode 100644
index 0000000..7175dc3
--- /dev/null
+++ b/Documentation/devicetree/bindings/video/toppoly,td028ttec1.txt
@@ -0,0 +1,30 @@
+Toppoly TD028TTEC1 Panel
+============
+
+Required properties:
+- compatible: "toppoly,td028ttec1"
+
+Optional properties:
+- label: a symbolic name for the panel
+
+Required nodes:
+- Video port for DPI input
+
+Example
+-------
+
+lcd-panel: td028ttec1@0 {
+ compatible = "toppoly,td028ttec1";
+ reg = <0>;
+ spi-max-frequency = <100000>;
+ spi-cpol;
+ spi-cpha;
+
+ label = "lcd";
+ port {
+ lcd_in: endpoint {
+ remote-endpoint = <&dpi_out>;
+ };
+ };
+};
+
diff --git a/drivers/video/fbdev/omap2/displays-new/panel-tpo-td028ttec1.c b/drivers/video/fbdev/omap2/displays-new/panel-tpo-td028ttec1.c
index fae6adc..70a56ff 100644
--- a/drivers/video/fbdev/omap2/displays-new/panel-tpo-td028ttec1.c
+++ b/drivers/video/fbdev/omap2/displays-new/panel-tpo-td028ttec1.c
@@ -206,7 +206,8 @@ static int td028ttec1_panel_enable(struct omap_dss_device *dssdev)
if (omapdss_device_is_enabled(dssdev))
return 0;
- in->ops.dpi->set_data_lines(in, ddata->data_lines);
+ if (ddata->data_lines)
+ in->ops.dpi->set_data_lines(in, ddata->data_lines);
in->ops.dpi->set_timings(in, &ddata->videomode);
r = in->ops.dpi->enable(in);
@@ -389,6 +390,23 @@ static int td028ttec1_panel_probe_pdata(struct spi_device *spi)
return 0;
}
+static int td028ttec1_probe_of(struct spi_device *spi)
+{
+ struct device_node *node = spi->dev.of_node;
+ struct panel_drv_data *ddata = dev_get_drvdata(&spi->dev);
+ struct omap_dss_device *in;
+
+ in = omapdss_of_find_source_for_first_ep(node);
+ if (IS_ERR(in)) {
+ dev_err(&spi->dev, "failed to find video source\n");
+ return PTR_ERR(in);
+ }
+
+ ddata->in = in;
+
+ return 0;
+}
+
static int td028ttec1_panel_probe(struct spi_device *spi)
{
struct panel_drv_data *ddata;
@@ -418,6 +436,10 @@ static int td028ttec1_panel_probe(struct spi_device *spi)
r = td028ttec1_panel_probe_pdata(spi);
if (r)
return r;
+ } else if (spi->dev.of_node) {
+ r = td028ttec1_probe_of(spi);
+ if (r)
+ return r;
} else {
return -ENODEV;
}
@@ -463,6 +485,13 @@ static int td028ttec1_panel_remove(struct spi_device *spi)
return 0;
}
+static const struct of_device_id td028ttec1_of_match[] = {
+ { .compatible = "toppoly,td028ttec1", },
+ {},
+};
+
+MODULE_DEVICE_TABLE(of, td028ttec1_of_match);
+
static struct spi_driver td028ttec1_spi_driver = {
.probe = td028ttec1_panel_probe,
.remove = td028ttec1_panel_remove,
@@ -470,6 +499,7 @@ static struct spi_driver td028ttec1_spi_driver = {
.driver = {
.name = "panel-tpo-td028ttec1",
.owner = THIS_MODULE,
+ .of_match_table = td028ttec1_of_match,
},
};
--
1.8.3.2
^ permalink raw reply related
* [PATCH 2/2] ARM: dts: oma3-gta04: Add display support
From: Marek Belisko @ 2014-04-22 21:12 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1398201168-25275-1-git-send-email-marek@goldelico.com>
This patch add support for lcd display on gta04 board. Display control
is connected on spi (used spi bitbang driver).
Signed-off-by: Marek Belisko <marek@goldelico.com>
---
arch/arm/boot/dts/omap3-gta04.dts | 86 +++++++++++++++++++++++++++++++++++++++
1 file changed, 86 insertions(+)
diff --git a/arch/arm/boot/dts/omap3-gta04.dts b/arch/arm/boot/dts/omap3-gta04.dts
index f8ad125..db56e67 100644
--- a/arch/arm/boot/dts/omap3-gta04.dts
+++ b/arch/arm/boot/dts/omap3-gta04.dts
@@ -44,6 +44,36 @@
ti,mcbsp = <&mcbsp2>;
ti,codec = <&twl_audio>;
};
+
+ spi_lcd {
+ compatible = "spi-gpio";
+ #address-cells = <0x1>;
+ #size-cells = <0x0>;
+ pinctrl-names = "default";
+ pinctrl-0 = <&spi_gpio_pins>;
+
+ gpio-sck = <&gpio1 12 0>;
+ gpio-miso = <&gpio1 18 0>;
+ gpio-mosi = <&gpio1 20 0>;
+ cs-gpios = <&gpio1 19 0>;
+ num-chipselects = <1>;
+
+ /* lcd panel */
+ lcd: td028ttec1@0 {
+ compatible = "toppoly,td028ttec1";
+ reg = <0>;
+ spi-max-frequency = <100000>;
+ spi-cpol;
+ spi-cpha;
+
+ label = "lcd";
+ port {
+ lcd_in: endpoint {
+ remote-endpoint = <&dpi_out>;
+ };
+ };
+ };
+ };
};
&omap3_pmx_core {
@@ -78,6 +108,47 @@
0x11e (PIN_INPUT_PULLUP | MUX_MODE0) /* sdmmc1_dat3.sdmmc1_dat3 */
>;
};
+
+ dss_dpi_pins: pinmux_dss_dpi_pins {
+ pinctrl-single,pins = <
+ 0x0a4 (PIN_OUTPUT | MUX_MODE0) /* dss_pclk.dss_pclk */
+ 0x0a6 (PIN_OUTPUT | MUX_MODE0) /* dss_hsync.dss_hsync */
+ 0x0a8 (PIN_OUTPUT | MUX_MODE0) /* dss_vsync.dss_vsync */
+ 0x0aa (PIN_OUTPUT | MUX_MODE0) /* dss_acbias.dss_acbias */
+ 0x0ac (PIN_OUTPUT | MUX_MODE0) /* dss_data0.dss_data0 */
+ 0x0ae (PIN_OUTPUT | MUX_MODE0) /* dss_data1.dss_data1 */
+ 0x0b0 (PIN_OUTPUT | MUX_MODE0) /* dss_data2.dss_data2 */
+ 0x0b2 (PIN_OUTPUT | MUX_MODE0) /* dss_data3.dss_data3 */
+ 0x0b4 (PIN_OUTPUT | MUX_MODE0) /* dss_data4.dss_data4 */
+ 0x0b6 (PIN_OUTPUT | MUX_MODE0) /* dss_data5.dss_data5 */
+ 0x0b8 (PIN_OUTPUT | MUX_MODE0) /* dss_data6.dss_data6 */
+ 0x0ba (PIN_OUTPUT | MUX_MODE0) /* dss_data7.dss_data7 */
+ 0x0bc (PIN_OUTPUT | MUX_MODE0) /* dss_data8.dss_data8 */
+ 0x0be (PIN_OUTPUT | MUX_MODE0) /* dss_data9.dss_data9 */
+ 0x0c0 (PIN_OUTPUT | MUX_MODE0) /* dss_data10.dss_data10 */
+ 0x0c2 (PIN_OUTPUT | MUX_MODE0) /* dss_data11.dss_data11 */
+ 0x0c4 (PIN_OUTPUT | MUX_MODE0) /* dss_data12.dss_data12 */
+ 0x0c6 (PIN_OUTPUT | MUX_MODE0) /* dss_data13.dss_data13 */
+ 0x0c8 (PIN_OUTPUT | MUX_MODE0) /* dss_data14.dss_data14 */
+ 0x0ca (PIN_OUTPUT | MUX_MODE0) /* dss_data15.dss_data15 */
+ 0x0cc (PIN_OUTPUT | MUX_MODE0) /* dss_data16.dss_data16 */
+ 0x0ce (PIN_OUTPUT | MUX_MODE0) /* dss_data17.dss_data17 */
+ 0x0d0 (PIN_OUTPUT | MUX_MODE0) /* dss_data18.dss_data18 */
+ 0x0d2 (PIN_OUTPUT | MUX_MODE0) /* dss_data19.dss_data19 */
+ 0x0d4 (PIN_OUTPUT | MUX_MODE0) /* dss_data20.dss_data20 */
+ 0x0d6 (PIN_OUTPUT | MUX_MODE0) /* dss_data21.dss_data21 */
+ 0x0d8 (PIN_OUTPUT | MUX_MODE0) /* dss_data22.dss_data22 */
+ 0x0da (PIN_OUTPUT | MUX_MODE0) /* dss_data23.dss_data23 */
+ >;
+ };
+
+ spi_gpio_pins: spi_gpio_pinmux {
+ pinctrl-single,pins = <0x5a8 (PIN_OUTPUT | MUX_MODE4) /* clk */
+ 0x5b6 (PIN_OUTPUT | MUX_MODE4) /* cs */
+ 0x5b8 (PIN_OUTPUT | MUX_MODE4) /* tx */
+ 0x5b4 (PIN_INPUT | MUX_MODE4) /* rx */
+ >;
+ };
};
&i2c1 {
@@ -219,3 +290,18 @@
regulator-min-microvolt = <2800000>;
regulator-max-microvolt = <3150000>;
};
+
+&dss {
+ pinctrl-names = "default";
+ pinctrl-0 = < &dss_dpi_pins >;
+
+ status = "okay";
+
+ vdds_dsi-supply = <&vpll2>;
+
+ dpi_out: endpoint {
+ remote-endpoint = <&lcd_in>;
+ data-lines = <24>;
+ };
+
+};
--
1.8.3.2
^ permalink raw reply related
* [PATCH] video: Kconfig: Add a dependency to the Goldfish framebuffer driver
From: Jean Delvare @ 2014-04-23 10:42 UTC (permalink / raw)
To: linux-fbdev
All other Goldfish drivers depend on GOLDFISH, I see no reason why the
framebuffer driver would be an exception.
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
---
drivers/video/fbdev/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- linux-3.15-rc2.orig/drivers/video/fbdev/Kconfig 2014-04-22 14:20:30.949107522 +0200
+++ linux-3.15-rc2/drivers/video/fbdev/Kconfig 2014-04-23 11:51:17.163933232 +0200
@@ -2169,7 +2169,7 @@ config FB_XILINX
config FB_GOLDFISH
tristate "Goldfish Framebuffer"
- depends on FB && HAS_DMA
+ depends on FB && HAS_DMA && (GOLDFISH || COMPILE_TEST)
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
--
Jean Delvare
SUSE L3 Support
^ permalink raw reply
* Re: [PATCH 1/2] omapdss: panel-tpo-td028ec1: Add DT support.
From: Tomi Valkeinen @ 2014-04-23 10:44 UTC (permalink / raw)
To: linux-arm-kernel
In-Reply-To: <1398201168-25275-2-git-send-email-marek@goldelico.com>
[-- Attachment #1: Type: text/plain, Size: 1020 bytes --]
On 23/04/14 00:12, Marek Belisko wrote:
> static int td028ttec1_panel_probe(struct spi_device *spi)
> {
> struct panel_drv_data *ddata;
> @@ -418,6 +436,10 @@ static int td028ttec1_panel_probe(struct spi_device *spi)
> r = td028ttec1_panel_probe_pdata(spi);
> if (r)
> return r;
> + } else if (spi->dev.of_node) {
> + r = td028ttec1_probe_of(spi);
> + if (r)
> + return r;
> } else {
> return -ENODEV;
> }
> @@ -463,6 +485,13 @@ static int td028ttec1_panel_remove(struct spi_device *spi)
> return 0;
> }
>
> +static const struct of_device_id td028ttec1_of_match[] = {
> + { .compatible = "toppoly,td028ttec1", },
We need to hack a bit here for the time being. You need to have
"omapdss," prefix for the compatible string in the driver, and add the
panel's compatible string to arch/arm/mach-omap2/display.c:
dss_compat_conv_list.
The reason for this is that the drivers are omap specific, but the DT
data is not.
Otherwise looks good to me.
Tomi
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 819 bytes --]
^ permalink raw reply
* [PATCH] fbdev: Fix tmiofb driver dependencies
From: Jean Delvare @ 2014-04-23 11:51 UTC (permalink / raw)
To: linux-fbdev
The tmiofb driver should not depend on MFD_CORE but on MFD_TMIO.
Without the tmio_core driver, tmiofb has no platform device to bind
to and is thus useless.
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
---
I suspect that MFD_TMIO was originally intended and MFD_CORE was a
typo.
drivers/video/fbdev/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- linux-3.15-rc2.orig/drivers/video/fbdev/Kconfig 2014-04-23 11:51:17.163933232 +0200
+++ linux-3.15-rc2/drivers/video/fbdev/Kconfig 2014-04-23 13:40:01.170774059 +0200
@@ -1993,7 +1993,7 @@ config FB_SH_MOBILE_HDMI
config FB_TMIO
tristate "Toshiba Mobile IO FrameBuffer support"
- depends on FB && MFD_CORE
+ depends on FB && MFD_TMIO
select FB_CFB_FILLRECT
select FB_CFB_COPYAREA
select FB_CFB_IMAGEBLIT
--
Jean Delvare
SUSE L3 Support
^ permalink raw reply
* [PATCH] fbcon: Fix memory leak in con2fb_release_oldinfo()
From: Masami Ichikawa @ 2014-04-23 14:35 UTC (permalink / raw)
To: masami256, plagnioj, tomi.valkeinen, udknight, gregkh, keithp,
mika.kuoppala, viresh.kumar, linux-kernel, linux-fbdev
kmemleak reported a memory leak as below.
unreferenced object 0xffff8800dab6d8d8 (size 96):
comm "swapper/0", pid 1, jiffies 4294877598 (age 38.483s)
hex dump (first 32 bytes):
00 00 00 00 00 01 00 00 08 00 00 00 10 00 00 00 ................
07 00 00 00 00 00 00 00 01 00 00 00 00 00 00 00 ................
backtrace:
[<ffffffff814e8f2e>] kmemleak_alloc+0x4e/0xb0
[<ffffffff811a0600>] __kmalloc+0x280/0x320
[<ffffffff81309b61>] soft_cursor+0x231/0x290
[<ffffffff81309393>] bit_cursor+0x613/0x650
[<ffffffff8130556b>] fbcon_cursor+0x13b/0x1c0
[<ffffffff813755f8>] hide_cursor+0x28/0xa0
[<ffffffff81376e98>] redraw_screen+0x168/0x240
[<ffffffff81303891>] fbcon_prepare_logo+0x381/0x420
[<ffffffff81303c7e>] fbcon_init+0x34e/0x590
[<ffffffff81375828>] visual_init+0xb8/0x120
[<ffffffff81377c93>] do_bind_con_driver+0x163/0x380
[<ffffffff81378494>] do_take_over_console+0x114/0x1c0
[<ffffffff81303f23>] do_fbcon_takeover+0x63/0xd0
[<ffffffff813086dd>] fbcon_event_notify+0x68d/0x7e0
[<ffffffff814ff7ac>] notifier_call_chain+0x4c/0x70
[<ffffffff8108c85d>] __blocking_notifier_call_chain+0x4d/0x70
This memory leak cause is, fbcon_ops's cursor_src is allocated in
soft_cursor() but not released in con2fb_release_oldinfo().
so, cursor_src is needed to be released when oldinfo is going to be
released.
Signed-off-by: Masami Ichikawa <masami256@gmail.com>
---
drivers/video/console/fbcon.c | 1 +
1 file changed, 1 insertion(+)
diff --git a/drivers/video/console/fbcon.c b/drivers/video/console/fbcon.c
index f447734..57b1d44 100644
--- a/drivers/video/console/fbcon.c
+++ b/drivers/video/console/fbcon.c
@@ -748,6 +748,7 @@ static int con2fb_release_oldinfo(struct vc_data *vc, struct fb_info *oldinfo,
fbcon_del_cursor_timer(oldinfo);
kfree(ops->cursor_state.mask);
kfree(ops->cursor_data);
+ kfree(ops->cursor_src);
kfree(ops->fontbuffer);
kfree(oldinfo->fbcon_par);
oldinfo->fbcon_par = NULL;
--
1.9.1
^ permalink raw reply related
* Re: [PATCH] fbdev: Fix tmiofb driver dependencies
From: Geert Uytterhoeven @ 2014-04-23 19:45 UTC (permalink / raw)
To: linux-fbdev
In-Reply-To: <20140423135104.2974008f@endymion.delvare>
Hi Jean,
On Wed, Apr 23, 2014 at 1:51 PM, Jean Delvare <jdelvare@suse.de> wrote:
> The tmiofb driver should not depend on MFD_CORE but on MFD_TMIO.
> Without the tmio_core driver, tmiofb has no platform device to bind
> to and is thus useless.
What about COMPILE_TEST?
> Signed-off-by: Jean Delvare <jdelvare@suse.de>
> Cc: Jean-Christophe Plagniol-Villard <plagnioj@jcrosoft.com>
> Cc: Tomi Valkeinen <tomi.valkeinen@ti.com>
> ---
> I suspect that MFD_TMIO was originally intended and MFD_CORE was a
> typo.
Does it compile with MFD_CORE=n?
If no: depends on FB && MDF_CORE && (MFD_TMIO || COMPILE_TEST)
If yes: depends on FB && (MFD_TMIO || COMPILE_TEST)
> drivers/video/fbdev/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- linux-3.15-rc2.orig/drivers/video/fbdev/Kconfig 2014-04-23 11:51:17.163933232 +0200
> +++ linux-3.15-rc2/drivers/video/fbdev/Kconfig 2014-04-23 13:40:01.170774059 +0200
> @@ -1993,7 +1993,7 @@ config FB_SH_MOBILE_HDMI
>
> config FB_TMIO
> tristate "Toshiba Mobile IO FrameBuffer support"
> - depends on FB && MFD_CORE
> + depends on FB && MFD_TMIO
Gr{oetje,eeting}s,
Geert
--
Geert Uytterhoeven -- There's lots of Linux beyond ia32 -- geert@linux-m68k.org
In personal conversations with technical people, I call myself a hacker. But
when I'm talking to journalists I just say "programmer" or something like that.
-- Linus Torvalds
^ permalink raw reply
page: next (older) | prev (newer) | latest
- recent:[subjects (threaded)|topics (new)|topics (active)]
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox