Re: [Linux-fbdev-devel] [PATCH] omapfb: invalid test on unsigned
On Mon, 22 Jun 2009 22:35:59 +0200 Roel Kluin wrote: > Unsigned regno cannot be less than 0. > > Signed-off-by: Roel Kluin > --- > Is this correct? please review. > No. It is a case for truecolor modes. They do not use the cmap. Either remove the if clause completely or make it a an else clause for the next if if (regno < 16) { ... } else { r = -EINVAL; } The latter (the else clause) is a better solution. Kind regards, Krzysztof > diff --git a/drivers/video/omap/omapfb_main.c > b/drivers/video/omap/omapfb_main.c > index 060d72f..787271f 100644 > --- a/drivers/video/omap/omapfb_main.c > +++ b/drivers/video/omap/omapfb_main.c > @@ -276,7 +276,7 @@ static int _setcolreg(struct fb_info *info, u_int regno, > u_int red, u_int green, > if (r != 0) > break; > > - if (regno < 0) { > + if (regno >= info->cmap.len) { > r = -EINVAL; > break; > } > > -- > Are you an open source citizen? Join us for the Open Source Bridge conference! > Portland, OR, June 17-19. Two days of sessions, one day of unconference: $250. > Need another reason to go? 24-hour hacker lounge. Register today! > http://ad.doubleclick.net/clk;215844324;13503038;v?http://opensourcebridge.org > ___ > Linux-fbdev-devel mailing list > linux-fbdev-de...@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/linux-fbdev-devel > -- Nowa akcja Pepsi - nagrody za kody spod nakretek. Zarejestruj sie! http://link.interia.pl/f21cc -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL REQUEST] omapfb: Add support for new LCDs / misc fixes
On Thu, 11 Jun 2009 15:02:06 +0300 Imre Deak wrote: > Hi, > > the following pull request is for the patchset updated based on your comments: > > The following changes since commit 07a2039b8eb0af4ff464efd3dfd95de5c02648c6: > Linus Torvalds (1): > Linux 2.6.30 > > are available in the git repository at: > > git://koowaldah.org/people/imre/linux-2.6-fb master > > Daniel Stone (1): > omapfb: dispc: Allow multiple external IRQ handlers > > Hunyue Yau (1): > omapfb: Add support for the 2430SDP LCD > > Imre Deak (5): > omapfb: Add support for MIPI-DCS compatible LCDs > N770: Enable LCD MIPI-DCS in Kconfig > omapfb: dispc: Various typo fixes > omapfb: Add FB manual update option to Kconfig > omapfb: HWA742: fix pointer to be const > > Jonathan McDowell (1): > omapfb: Add support for the Amstrad Delta LCD > > Jouni Hogander (2): > omapfb: dispc: Disable iface clocks along with func clocks > omapfb: dispc: Enable wake up capability > > Jouni Högander (1): > omapfb: suspend/resume only if FB device is already initialized > > Kevin Hilman (1): > omapfb: Add support for the 3430SDP LCD > > Koen Kooi (1): > omapfb: Add support for the OMAP3 Beagle DVI output > > Kyungmin Park (1): > omapfb: Add support for the Apollon LCD > > Rodrigo Vivi (1): > omapfb: Add support for rotation on the Blizzard LCD ctrl > > Stanley.Miao (1): > omapfb: Add support for the ZOOM MDK LCD > > Steve Sakoman (2): > omapfb: Add support for the OMAP3 EVM LCD > omapfb: Add support for the Gumstix Overo LCD > > arun c (2): > omapfb: Add support for the OMAP2EVM LCD > omapfb: Fix coding style / remove dead line > > arch/arm/configs/n770_defconfig |2 +- > arch/arm/configs/omap3_beagle_defconfig | 47 ++- > arch/arm/configs/omap_3430sdp_defconfig | 39 ++- > arch/arm/configs/omap_ldp_defconfig | 54 +++- > arch/arm/plat-omap/include/mach/lcd_mipid.h |5 + > arch/arm/plat-omap/include/mach/omapfb.h|4 +- > drivers/video/omap/Kconfig | 82 +++- > drivers/video/omap/Makefile | 12 + > drivers/video/omap/blizzard.c | 91 - > drivers/video/omap/dispc.c | 130 --- > drivers/video/omap/dispc.h |7 +- > drivers/video/omap/hwa742.c |2 +- > drivers/video/omap/lcd_2430sdp.c| 200 + > drivers/video/omap/lcd_ams_delta.c | 137 ++ > drivers/video/omap/lcd_apollon.c| 138 ++ > drivers/video/omap/lcd_ldp.c| 200 + > drivers/video/omap/lcd_mipid.c | 625 > +++ > drivers/video/omap/lcd_omap2evm.c | 189 > drivers/video/omap/lcd_omap3beagle.c| 133 ++ > drivers/video/omap/lcd_omap3evm.c | 191 > drivers/video/omap/lcd_overo.c | 179 > drivers/video/omap/omapfb_main.c| 64 ++- > drivers/video/omap/rfbi.c |7 +- > 23 files changed, 2424 insertions(+), 114 deletions(-) > create mode 100644 drivers/video/omap/lcd_2430sdp.c > create mode 100644 drivers/video/omap/lcd_ams_delta.c > create mode 100644 drivers/video/omap/lcd_apollon.c > create mode 100644 drivers/video/omap/lcd_ldp.c > create mode 100644 drivers/video/omap/lcd_mipid.c > create mode 100644 drivers/video/omap/lcd_omap2evm.c > create mode 100644 drivers/video/omap/lcd_omap3beagle.c > create mode 100644 drivers/video/omap/lcd_omap3evm.c > create mode 100644 drivers/video/omap/lcd_overo.c > I assume you introduced small changes after my review. For the whole patchset: Acked-by: Krzysztof Helt Regards, Krzysztof -- Przekaz dalej wiadomosc: Zawsze warto oszczedzac. Teraz 5,5%! Sprawdz > http://link.interia.pl/f21b1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 02/20] omapfb: Add support for MIPI-DCS compatible LCDs
On Tue, 9 Jun 2009 14:15:22 +0300 Imre Deak wrote: > Hi, > > On Mon, Jun 08, 2009 at 12:43:24AM +0200, ext Krzysztof Helt wrote: > > On Thu, 4 Jun 2009 20:52:27 +0300 > > Imre Deak wrote: > >[...] > > > + > > > +#define to_mipid_device(p) container_of(p, struct > > > mipid_device, \ > > > + panel) > > > +struct mipid_device { > > > + int enabled; > > > + int model; > > > > This one is only set and never read. A name is probably enough. > > Ok, I'll remove model. > > > > > > + int revision; > > > + u8 display_id[3]; > > > > This one should be a local variable. > > Ok, I'll move it to the func where it's used. > > > > > > + unsigned intsaved_bklight_level; > > > + unsigned long hw_guard_end; /* next value of jiffies > > > +when we can issue the > > > +next sleep in/out command */ > > > + unsigned long hw_guard_wait; /* max guard time in jiffies */ > > > + > > > + struct omapfb_device*fbdev; > > > + struct spi_device *spi; > > > + struct mutexmutex; > > > + struct lcd_panelpanel; > > > > How does it differ from fbdev->panel? Is it duplicated field? > > fbdev->panel is a pointer to this device instance specific data. It's > embedded here > so that we can get to struct mipid_device with the container_of macro when > fbdev->panel > is passed to us. > > > > > I am sorry but I had not enough time to review the rest. > > Thanks for the review, if there is nothing else I can post a new version with > the > above changes. > Please post the series after I review your last patch. It should not take longer than two days. Regards, Krzysztof -- Przekaz dalej wiadomosc: Zawsze warto oszczedzac. Teraz 5,5%! Sprawdz > http://link.interia.pl/f21b1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 11/20] omapfb: Add support for the ZOOM MDK LCD
On Thu, 4 Jun 2009 20:52:36 +0300 Imre Deak wrote: > From: Stanley.Miao > > Add glue to control the OMAP_LDP LCD as a frame buffer device > using the existing dispc.c driver under omapfb. > > Patch updated for mainline kernel. Note that the > drivers/video/omap should be updated to pass omap_lcd_config > in platform_data. The patch should also be updated to compile > if twl4030 is not selected, and eventually to use the regulator > framework. > > Signed-off-by: Stanley.Miao > Signed-off-by: Tony Lindgren > Fixed-by: Jarkko Nikula > Fixed-by: Tony Lindgren > CC: linux-arm-ker...@lists.arm.linux.org.uk > Signed-off-by: Imre Deak > --- > arch/arm/configs/omap_ldp_defconfig | 54 +- > drivers/video/omap/Kconfig |4 + > drivers/video/omap/Makefile |1 + > drivers/video/omap/lcd_ldp.c| 200 > +++ > 4 files changed, 257 insertions(+), 2 deletions(-) > create mode 100644 drivers/video/omap/lcd_ldp.c > > diff --git a/arch/arm/configs/omap_ldp_defconfig > b/arch/arm/configs/omap_ldp_defconfig > index 679a4a3..b9c4891 100644 > --- a/arch/arm/configs/omap_ldp_defconfig > +++ b/arch/arm/configs/omap_ldp_defconfig > @@ -690,6 +690,7 @@ CONFIG_GPIOLIB=y > # CONFIG_GPIO_MAX732X is not set > # CONFIG_GPIO_PCA953X is not set > # CONFIG_GPIO_PCF857X is not set > +CONFIG_GPIO_TWL4030=y > > # > # PCI GPIO expanders: > @@ -742,6 +743,7 @@ CONFIG_SSB_POSSIBLE=y > # CONFIG_MFD_SM501 is not set > # CONFIG_HTC_EGPIO is not set > # CONFIG_HTC_PASIC3 is not set > +CONFIG_TWL4030_CORE=y > # CONFIG_MFD_TMIO is not set > # CONFIG_MFD_T7L66XB is not set > # CONFIG_MFD_TC6387XB is not set > @@ -767,8 +769,46 @@ CONFIG_DAB=y > # > # CONFIG_VGASTATE is not set > CONFIG_VIDEO_OUTPUT_CONTROL=m > -# CONFIG_FB is not set > -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set > +CONFIG_FB=y > +CONFIG_FIRMWARE_EDID=y > +# CONFIG_FB_DDC is not set > +# CONFIG_FB_BOOT_VESA_SUPPORT is not set > +CONFIG_FB_CFB_FILLRECT=y > +CONFIG_FB_CFB_COPYAREA=y > +CONFIG_FB_CFB_IMAGEBLIT=y > +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set > +# CONFIG_FB_SYS_FILLRECT is not set > +# CONFIG_FB_SYS_COPYAREA is not set > +# CONFIG_FB_SYS_IMAGEBLIT is not set > +# CONFIG_FB_FOREIGN_ENDIAN is not set > +# CONFIG_FB_SYS_FOPS is not set > +# CONFIG_FB_SVGALIB is not set > +# CONFIG_FB_MACMODES is not set > +# CONFIG_FB_BACKLIGHT is not set > +CONFIG_FB_MODE_HELPERS=y > +CONFIG_FB_TILEBLITTING=y > + > +# > +# Frame buffer hardware drivers > +# > +# CONFIG_FB_S1D13XXX is not set > +# CONFIG_FB_VIRTUAL is not set > +# CONFIG_FB_METRONOME is not set > +CONFIG_FB_OMAP=y > +CONFIG_FB_OMAP_LCD_VGA=y > +# CONFIG_FB_OMAP_LCDC_EXTERNAL is not set > +# CONFIG_FB_OMAP_BOOTLOADER_INIT is not set > +CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=4 > +CONFIG_BACKLIGHT_LCD_SUPPORT=y > +CONFIG_LCD_CLASS_DEVICE=y > +# CONFIG_LCD_LTV350QV is not set > +# CONFIG_LCD_ILI9320 is not set > +# CONFIG_LCD_TDO24M is not set > +# CONFIG_LCD_VGG2432A4 is not set > +CONFIG_LCD_PLATFORM=y > +CONFIG_BACKLIGHT_CLASS_DEVICE=y > +# CONFIG_BACKLIGHT_CORGI is not set > +# CONFIG_BACKLIGHT_GENERIC is not set > > # > # Display device support > @@ -780,6 +820,16 @@ CONFIG_VIDEO_OUTPUT_CONTROL=m > # > # CONFIG_VGA_CONSOLE is not set > CONFIG_DUMMY_CONSOLE=y > +CONFIG_FRAMEBUFFER_CONSOLE=y > +# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set > +# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set > +# CONFIG_FONTS is not set > +CONFIG_FONT_8x8=y > +CONFIG_FONT_8x16=y > +CONFIG_LOGO=y > +CONFIG_LOGO_LINUX_MONO=y > +CONFIG_LOGO_LINUX_VGA16=y > +CONFIG_LOGO_LINUX_CLUT224=y > CONFIG_SOUND=y > CONFIG_SND=y > # CONFIG_SND_SEQUENCER is not set > diff --git a/drivers/video/omap/Kconfig b/drivers/video/omap/Kconfig > index eb05e09..2bffc07 100644 > --- a/drivers/video/omap/Kconfig > +++ b/drivers/video/omap/Kconfig > @@ -7,6 +7,10 @@ config FB_OMAP > help >Frame buffer driver for OMAP based boards. > > +config FB_OMAP_LCD_VGA > +bool "Use LCD in VGA mode" > + depends on MACH_OMAP_3430SDP || MACH_OMAP_LDP > + > choice > depends on FB_OMAP && MACH_OVERO > prompt "Screen resolution" > diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile > index 0d2996a..b63b198 100644 > --- a/drivers/video/omap/Makefile > +++ b/drivers/video/omap/Makefile > @@ -29,6 +29,7 @@ objs-y$(CONFIG_MACH_OMAP_OSK) += lcd_osk.o > objs-y$(CONFIG_MACH_OMAP_APOLLON) += lcd_apollon.o > objs-y$(CONFIG_MACH_OMAP_2430SDP) += lcd_2430sdp.o > objs-y$(CONFIG_MACH_OMAP_3430SDP) += lcd_2430sdp.o > +objs-y$(CONFIG_MACH_OMAP_LDP) += lcd_ldp.o > objs-y$(CONFIG_MACH_OMAP2EVM) += lcd_omap2evm.o > objs-y$(CONFIG_MACH_OMAP3EVM) += lcd_omap3evm.o > objs-y$(CONFIG_MACH_OMAP3_BEAGLE) += lcd_omap3beagle.o > diff --git a/drivers/video/omap/lcd_ldp.c b/drivers/video/omap/lcd_ldp.c > new file mode 100644 > index 000..8925230 > --- /dev/null > +++ b/drivers/video/omap/lcd_ldp.c > @@ -0,0 +1,200 @@ > +/
Re: [PATCH 20/20] omapfb: HWA742: fix pointer to be const
On Thu, 4 Jun 2009 20:52:45 +0300 Imre Deak wrote: > Fixes the following: > warning: assignment discards qualifiers from pointer target type > > CC: linux-arm-ker...@lists.arm.linux.org.uk > Signed-off-by: Imre Deak > --- > drivers/video/omap/hwa742.c |2 +- > 1 files changed, 1 insertions(+), 1 deletions(-) > Acked-by: Krzysztof Helt -- Interia.pl w Twojej kieszeni! Kliknij >>>http://link.interia.pl/f21b8 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 19/20] omapfb: Add FB manual update option to Kconfig
On Thu, 4 Jun 2009 20:52:44 +0300 Imre Deak wrote: > Also move the controller specific options up in the menu, to a more > logical spot. > > Signed-off-by: Imre Deak > --- > drivers/video/omap/Kconfig | 49 ++- > 1 files changed, 30 insertions(+), 19 deletions(-) > Acked-by: Krzysztof Helt -- Kup wlasne mieszkanie za 33 tys. zl. Sprawdz >>> http://link.interia.pl/f21eb -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 18/20] omapfb: Fix coding style / remove dead line
On Thu, 4 Jun 2009 20:52:43 +0300 Imre Deak wrote: > From: arun c > > - use __iomem type attribute where appropriate > - expand (a ? : b) to (a ? a : b) > As suggested by Russell King > > - remove a dead line from omapfb_main.c > > Signed-off-by: Arun C > Signed-off-by: Tony Lindgren > CC: linux-arm-ker...@lists.arm.linux.org.uk > Signed-off-by: Imre Deak > --- > arch/arm/plat-omap/include/mach/omapfb.h |4 ++-- > drivers/video/omap/omapfb_main.c |5 ++--- > 2 files changed, 4 insertions(+), 5 deletions(-) > Acked-by: Krzysztof Helt -- Kup wlasne mieszkanie za 33 tys. zl. Sprawdz >>> http://link.interia.pl/f21eb -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 17/20] omapfb: suspend/resume only if FB device is already initialized
On Thu, 4 Jun 2009 20:52:42 +0300 Imre Deak wrote: > From: Jouni Högander > > Check wether fbdev is NULL in suspend / resume functions. Fbdev is > NULL, if there is no lcd or it is not enabled in configuration. > > Signed-off-by: Jouni Högander > Signed-off-by: Tony Lindgren > Signed-off-by: Imre Deak > --- > drivers/video/omap/omapfb_main.c |7 --- > 1 files changed, 4 insertions(+), 3 deletions(-) > Acked-by: Krzysztof Helt -- Zostan dziennikarzem obywatelskim! Sprawd¼ sie >>> http://link.interia.pl/f21b9 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 16/20] omapfb: dispc: Allow multiple external IRQ handlers
On Thu, 4 Jun 2009 20:52:41 +0300 Imre Deak wrote: > From: Daniel Stone > > Previously, the only external (to dispc.c) IRQ handler was RFBI's > frame done handler. dispc's IRQ framework was very dumb: you could only > have one handler, and the semantics of {request,free}_irq were odd, to > say the least. > > The new framework allows multiple consumers to register arbitrary IRQ > masks. > > Signed-off-by: Daniel Stone > Signed-off-by: Tony Lindgren > Signed-off-by: Imre Deak > --- Acked-by: Krzysztof Helt -- Masz juz dosc wysokich rachunkow? Wygraj nowa mozliwosc komunikacji! Sprawdz >>> http://link.interia.pl/f21d2 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 15/20] omapfb: dispc: Enable wake up capability
On Thu, 4 Jun 2009 20:52:40 +0300 Imre Deak wrote: > From: Jouni Hogander > > Without wakeup enable omap doesn't wake up on dispc interrupts. This > causes problems in a case where mpu is in sleep state and dispc > interrupt fires. > > Signed-off-by: Jouni Hogander > Signed-off-by: Tony Lindgren > Signed-off-by: Imre Deak > --- > drivers/video/omap/dispc.c |4 ++-- > 1 files changed, 2 insertions(+), 2 deletions(-) > Acked-by: Krzysztof Helt -- Nowa akcja Pepsi - nagrody za kody spod nakretek. Zarejestruj sie! http://link.interia.pl/f21cc -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 14/20] omapfb: dispc: Disable iface clocks along with func clocks
On Thu, 4 Jun 2009 20:52:39 +0300 Imre Deak wrote: > From: Jouni Hogander > > Leaving interface clocks enabled causes dss pwrdm to stay in active > state when mpu is in active state. This fix puts dss to sleep state > when it is not needed. > > Earlier version broke framebuffer on 24xx. This is fixed by enabling > clocks before trying to access DISPC_IRQSTATUS register. > > Signed-off-by: Jouni Hogander > Signed-off-by: Tony Lindgren > Signed-off-by: Imre Deak > --- Acked-by: Krzysztof Helt -- Dobra czy zla wiadomosc? Zawsze warto oszczedzac. Teraz 5,5%. Sprawdz > http://link.interia.pl/f21b0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 13/20] omapfb: dispc: Various typo fixes
On Thu, 4 Jun 2009 20:52:38 +0300 Imre Deak wrote: > - value and register offset was swapped in a dispc write > - DISPC_CONTROL register was used instead of DISPC_SYSCONFIG > - FIFO size bit field had incorrect length for OMAP3 > > Signed-off-by: Tony Lindgren > Fixed-by: arun > Fixed-by: Kalle Jokiniemi > Fixed-by: Andrzej Zaborowski > Signed-off-by: Imre Deak > --- > drivers/video/omap/dispc.c |8 > 1 files changed, 4 insertions(+), 4 deletions(-) > Acked-by: Krzysztof Helt -- Wejdz i kliknij na Swoj znak zodiaku! http://link.interia.pl/f21b8 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 12/20] omapfb: Add support for rotation on the Blizzard LCD ctrl
On Thu, 4 Jun 2009 20:52:37 +0300 Imre Deak wrote: > From: Rodrigo Vivi > > The LCD controller (EPSON S1D13744) supports rotation (0, 90, 180 > and 270 degrees) on hardware just setting the bits 0 and 1 of 0x28 > register (LCD Panel Configuration Register). Now it is possible to > use this caps only setting the angle degree on var rotate of > fb_var_screeninfo using the FBIOPUT_VSCREENINFO ioctl. > > Signed-off-by: Rodrigo Vivi > Signed-off-by: Tony Lindgren > Fixed-by: Siarhei Siamashka > Signed-off-by: Imre Deak > --- > drivers/video/omap/blizzard.c| 91 +++-- > drivers/video/omap/omapfb_main.c | 52 -- > 2 files changed, 124 insertions(+), 19 deletions(-) > Acked-by: Krzysztof Helt -- Przekaz dalej wiadomosc: Zawsze warto oszczedzac. Teraz 5,5%! Sprawdz > http://link.interia.pl/f21b1 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 11/20] omapfb: Add support for the ZOOM MDK LCD
On Thu, 4 Jun 2009 20:52:36 +0300 Imre Deak wrote: > From: Stanley.Miao > > Add glue to control the OMAP_LDP LCD as a frame buffer device > using the existing dispc.c driver under omapfb. > > Patch updated for mainline kernel. Note that the > drivers/video/omap should be updated to pass omap_lcd_config > in platform_data. The patch should also be updated to compile > if twl4030 is not selected, and eventually to use the regulator > framework. > > Signed-off-by: Stanley.Miao > Signed-off-by: Tony Lindgren > Fixed-by: Jarkko Nikula > Fixed-by: Tony Lindgren > CC: linux-arm-ker...@lists.arm.linux.org.uk > Signed-off-by: Imre Deak > --- > arch/arm/configs/omap_ldp_defconfig | 54 +- > drivers/video/omap/Kconfig |4 + > drivers/video/omap/Makefile |1 + > drivers/video/omap/lcd_ldp.c| 200 > +++ > 4 files changed, 257 insertions(+), 2 deletions(-) > create mode 100644 drivers/video/omap/lcd_ldp.c > > diff --git a/arch/arm/configs/omap_ldp_defconfig > b/arch/arm/configs/omap_ldp_defconfig > index 679a4a3..b9c4891 100644 > --- a/arch/arm/configs/omap_ldp_defconfig > +++ b/arch/arm/configs/omap_ldp_defconfig > @@ -690,6 +690,7 @@ CONFIG_GPIOLIB=y > # CONFIG_GPIO_MAX732X is not set > # CONFIG_GPIO_PCA953X is not set > # CONFIG_GPIO_PCF857X is not set > +CONFIG_GPIO_TWL4030=y > > # > # PCI GPIO expanders: > @@ -742,6 +743,7 @@ CONFIG_SSB_POSSIBLE=y > # CONFIG_MFD_SM501 is not set > # CONFIG_HTC_EGPIO is not set > # CONFIG_HTC_PASIC3 is not set > +CONFIG_TWL4030_CORE=y > # CONFIG_MFD_TMIO is not set > # CONFIG_MFD_T7L66XB is not set > # CONFIG_MFD_TC6387XB is not set > @@ -767,8 +769,46 @@ CONFIG_DAB=y > # > # CONFIG_VGASTATE is not set > CONFIG_VIDEO_OUTPUT_CONTROL=m > -# CONFIG_FB is not set > -# CONFIG_BACKLIGHT_LCD_SUPPORT is not set > +CONFIG_FB=y > +CONFIG_FIRMWARE_EDID=y > +# CONFIG_FB_DDC is not set > +# CONFIG_FB_BOOT_VESA_SUPPORT is not set > +CONFIG_FB_CFB_FILLRECT=y > +CONFIG_FB_CFB_COPYAREA=y > +CONFIG_FB_CFB_IMAGEBLIT=y > +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set > +# CONFIG_FB_SYS_FILLRECT is not set > +# CONFIG_FB_SYS_COPYAREA is not set > +# CONFIG_FB_SYS_IMAGEBLIT is not set > +# CONFIG_FB_FOREIGN_ENDIAN is not set > +# CONFIG_FB_SYS_FOPS is not set > +# CONFIG_FB_SVGALIB is not set > +# CONFIG_FB_MACMODES is not set > +# CONFIG_FB_BACKLIGHT is not set > +CONFIG_FB_MODE_HELPERS=y > +CONFIG_FB_TILEBLITTING=y > + > +# > +# Frame buffer hardware drivers > +# > +# CONFIG_FB_S1D13XXX is not set > +# CONFIG_FB_VIRTUAL is not set > +# CONFIG_FB_METRONOME is not set > +CONFIG_FB_OMAP=y > +CONFIG_FB_OMAP_LCD_VGA=y > +# CONFIG_FB_OMAP_LCDC_EXTERNAL is not set > +# CONFIG_FB_OMAP_BOOTLOADER_INIT is not set > +CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=4 > +CONFIG_BACKLIGHT_LCD_SUPPORT=y > +CONFIG_LCD_CLASS_DEVICE=y > +# CONFIG_LCD_LTV350QV is not set > +# CONFIG_LCD_ILI9320 is not set > +# CONFIG_LCD_TDO24M is not set > +# CONFIG_LCD_VGG2432A4 is not set > +CONFIG_LCD_PLATFORM=y > +CONFIG_BACKLIGHT_CLASS_DEVICE=y > +# CONFIG_BACKLIGHT_CORGI is not set > +# CONFIG_BACKLIGHT_GENERIC is not set > > # > # Display device support > @@ -780,6 +820,16 @@ CONFIG_VIDEO_OUTPUT_CONTROL=m > # > # CONFIG_VGA_CONSOLE is not set > CONFIG_DUMMY_CONSOLE=y > +CONFIG_FRAMEBUFFER_CONSOLE=y > +# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set > +# CONFIG_FRAMEBUFFER_CONSOLE_ROTATION is not set > +# CONFIG_FONTS is not set > +CONFIG_FONT_8x8=y > +CONFIG_FONT_8x16=y > +CONFIG_LOGO=y > +CONFIG_LOGO_LINUX_MONO=y > +CONFIG_LOGO_LINUX_VGA16=y > +CONFIG_LOGO_LINUX_CLUT224=y > CONFIG_SOUND=y > CONFIG_SND=y > # CONFIG_SND_SEQUENCER is not set > diff --git a/drivers/video/omap/Kconfig b/drivers/video/omap/Kconfig > index eb05e09..2bffc07 100644 > --- a/drivers/video/omap/Kconfig > +++ b/drivers/video/omap/Kconfig > @@ -7,6 +7,10 @@ config FB_OMAP > help >Frame buffer driver for OMAP based boards. > > +config FB_OMAP_LCD_VGA > +bool "Use LCD in VGA mode" > + depends on MACH_OMAP_3430SDP || MACH_OMAP_LDP > + > choice > depends on FB_OMAP && MACH_OVERO > prompt "Screen resolution" > diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile > index 0d2996a..b63b198 100644 > --- a/drivers/video/omap/Makefile > +++ b/drivers/video/omap/Makefile > @@ -29,6 +29,7 @@ objs-y$(CONFIG_MACH_OMAP_OSK) += lcd_osk.o > objs-y$(CONFIG_MACH_OMAP_APOLLON) += lcd_apollon.o > objs-y$(CONFIG_MACH_OMAP_2430SDP) += lcd_2430sdp.o > objs-y$(CONFIG_MACH_OMAP_3430SDP) += lcd_2430sdp.o > +objs-y$(CONFIG_MACH_OMAP_LDP) += lcd_ldp.o > objs-y$(CONFIG_MACH_OMAP2EVM) += lcd_omap2evm.o > objs-y$(CONFIG_MACH_OMAP3EVM) += lcd_omap3evm.o > objs-y$(CONFIG_MACH_OMAP3_BEAGLE) += lcd_omap3beagle.o > diff --git a/drivers/video/omap/lcd_ldp.c b/drivers/video/omap/lcd_ldp.c > new file mode 100644 > index 000..8925230 > --- /dev/null > +++ b/drivers/video/omap/lcd_ldp.c > @@ -0,0 +1,200 @@ > +/
Re: [Linux-fbdev-devel] [PATCH 10/20] omapfb: Add support for the Gumstix Overo LCD
On Thu, 4 Jun 2009 20:52:35 +0300 Imre Deak wrote: > From: Steve Sakoman > > Signed-off-by: Steve Sakoman > Signed-off-by: Tony Lindgren > Signed-off-by: Imre Deak > --- > drivers/video/omap/Kconfig | 21 + > drivers/video/omap/Makefile|1 + > drivers/video/omap/lcd_overo.c | 179 > > 3 files changed, 201 insertions(+), 0 deletions(-) > create mode 100644 drivers/video/omap/lcd_overo.c > Acked-by: Krzysztof Helt -- Chcesz miec nawigacje GPS ? Zamow lub przedluz umowe na neostrade, a nawigacja bedzie Twoja. Kliknij na link po szczegoly! http://link.interia.pl/f219a -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 09/20] omapfb: Add support for the OMAP3 Beagle DVI output
On Thu, 4 Jun 2009 20:52:34 +0300 Imre Deak wrote: > From: Koen Kooi > > The default resolution is 1024x...@24bit > > This version addresses the comments from Felipe Balbi adn Arun Edarath > > Signed-off-by: Koen Kooi > Signed-off-by: Tony Lindgren > Fixed-by: Felipe Contreras > Fixed-by: Steve Sakoman > Fixed-by: Jarkko Nikula > Fixed-by: David Brownell > CC: linux-arm-ker...@lists.arm.linux.org.uk > Signed-off-by: Imre Deak > --- > arch/arm/configs/omap3_beagle_defconfig | 47 +++- > drivers/video/omap/Makefile |1 + > drivers/video/omap/lcd_omap3beagle.c| 133 > +++ > 3 files changed, 180 insertions(+), 1 deletions(-) > create mode 100644 drivers/video/omap/lcd_omap3beagle.c > > diff --git a/arch/arm/configs/omap3_beagle_defconfig > b/arch/arm/configs/omap3_beagle_defconfig > index 4c6fb7e..c4726f0 100644 > --- a/arch/arm/configs/omap3_beagle_defconfig > +++ b/arch/arm/configs/omap3_beagle_defconfig > @@ -769,7 +769,33 @@ CONFIG_DAB=y > # > # CONFIG_VGASTATE is not set > # CONFIG_VIDEO_OUTPUT_CONTROL is not set > -# CONFIG_FB is not set > +CONFIG_FB=y > +# CONFIG_FIRMWARE_EDID is not set > +# CONFIG_FB_DDC is not set > +CONFIG_FB_CFB_FILLRECT=y > +CONFIG_FB_CFB_COPYAREA=y > +CONFIG_FB_CFB_IMAGEBLIT=y > +# CONFIG_FB_CFB_REV_PIXELS_IN_BYTE is not set > +# CONFIG_FB_SYS_FILLRECT is not set > +# CONFIG_FB_SYS_COPYAREA is not set > +# CONFIG_FB_SYS_IMAGEBLIT is not set > +# CONFIG_FB_FOREIGN_ENDIAN is not set > +# CONFIG_FB_SYS_FOPS is not set > +# CONFIG_FB_SVGALIB is not set > +# CONFIG_FB_MACMODES is not set > +# CONFIG_FB_BACKLIGHT is not set > +# CONFIG_FB_MODE_HELPERS is not set > +# CONFIG_FB_TILEBLITTING is not set > + > +# > +# Frame buffer hardware drivers > +# > +# CONFIG_FB_S1D13XXX is not set > +# CONFIG_FB_VIRTUAL is not set > +CONFIG_FB_OMAP=y > +# CONFIG_FB_OMAP_LCDC_EXTERNAL is not set > +# CONFIG_FB_OMAP_BOOTLOADER_INIT is not set > +CONFIG_FB_OMAP_CONSISTENT_DMA_SIZE=2 > # CONFIG_BACKLIGHT_LCD_SUPPORT is not set > > # > @@ -782,6 +808,25 @@ CONFIG_DAB=y > # > # CONFIG_VGA_CONSOLE is not set > CONFIG_DUMMY_CONSOLE=y > +CONFIG_FRAMEBUFFER_CONSOLE=y > +# CONFIG_FRAMEBUFFER_CONSOLE_DETECT_PRIMARY is not set > +CONFIG_FRAMEBUFFER_CONSOLE_ROTATION=y > +CONFIG_FONTS=y > +CONFIG_FONT_8x8=y > +CONFIG_FONT_8x16=y > +# CONFIG_FONT_6x11 is not set > +# CONFIG_FONT_7x14 is not set > +# CONFIG_FONT_PEARL_8x8 is not set > +# CONFIG_FONT_ACORN_8x8 is not set > +# CONFIG_FONT_MINI_4x6 is not set > +# CONFIG_FONT_SUN8x16 is not set > +# CONFIG_FONT_SUN12x22 is not set > +# CONFIG_FONT_10x18 is not set > +# CONFIG_LOGO is not set > + > +# > +# Sound > +# > # CONFIG_SOUND is not set > # CONFIG_HID_SUPPORT is not set > CONFIG_USB_SUPPORT=y > diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile > index 4345157..9ff1815 100644 > --- a/drivers/video/omap/Makefile > +++ b/drivers/video/omap/Makefile > @@ -31,6 +31,7 @@ objs-y$(CONFIG_MACH_OMAP_2430SDP) += lcd_2430sdp.o > objs-y$(CONFIG_MACH_OMAP_3430SDP) += lcd_2430sdp.o > objs-y$(CONFIG_MACH_OMAP2EVM) += lcd_omap2evm.o > objs-y$(CONFIG_MACH_OMAP3EVM) += lcd_omap3evm.o > +objs-y$(CONFIG_MACH_OMAP3_BEAGLE) += lcd_omap3beagle.o > objs-y$(CONFIG_FB_OMAP_LCD_MIPID) += lcd_mipid.o > > omapfb-objs := $(objs-yy) > diff --git a/drivers/video/omap/lcd_omap3beagle.c > b/drivers/video/omap/lcd_omap3beagle.c > new file mode 100644 > index 000..40454dc > --- /dev/null > +++ b/drivers/video/omap/lcd_omap3beagle.c > @@ -0,0 +1,133 @@ > +/* > + * LCD panel support for the TI OMAP3 Beagle board > + * > + * Author: Koen Kooi > + * > + * Derived from drivers/video/omap/lcd-omap3evm.c > + * > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License as published by the > + * Free Software Foundation; either version 2 of the License, or (at your > + * option) any later version. > + * > + * This program is distributed in the hope that it will be useful, but > + * WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + * General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License along > + * with this program; if not, write to the Free Software Foundation, Inc., > + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. > + */ > + > +#include > +#include > +#include > +#include > + > +#include > +#include > +#include > + > +#define LCD_PANEL_ENABLE_GPIO 170 > + > +#define LCD_XRES 1024 > +#define LCD_YRES 768 > +#define LCD_PIXCLOCK 64000 /* in kHz */ > + Used once and well documented by the assignment. > +static int omap3beagle_panel_init(struct lcd_panel *panel, > + struct omapfb_device *fbdev) > +{ > + gpio_request(LCD_PANEL_ENABLE_GPIO, "LCD enable"); > + return 0; > +
Re: [Linux-fbdev-devel] [PATCH 08/20] omapfb: Add support for the OMAP3 EVM LCD
On Thu, 4 Jun 2009 20:52:33 +0300 Imre Deak wrote: > From: Steve Sakoman > > Add LCD support for OMAP3 EVM > > Backlight support by Arun C > > Signed-off-by: Steve Sakoman > Acked-by: Syed Mohammed Khasim > Signed-off-by: Tony Lindgren > Fixed-by: Jarkko Nikula > Fixed-by: David Brownell > Signed-off-by: Imre Deak > --- > drivers/video/omap/Makefile |1 + > drivers/video/omap/lcd_omap3evm.c | 191 > + > 2 files changed, 192 insertions(+), 0 deletions(-) > create mode 100644 drivers/video/omap/lcd_omap3evm.c > > diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile > index 96d2d43..4345157 100644 > --- a/drivers/video/omap/Makefile > +++ b/drivers/video/omap/Makefile > @@ -30,6 +30,7 @@ objs-y$(CONFIG_MACH_OMAP_APOLLON) += lcd_apollon.o > objs-y$(CONFIG_MACH_OMAP_2430SDP) += lcd_2430sdp.o > objs-y$(CONFIG_MACH_OMAP_3430SDP) += lcd_2430sdp.o > objs-y$(CONFIG_MACH_OMAP2EVM) += lcd_omap2evm.o > +objs-y$(CONFIG_MACH_OMAP3EVM) += lcd_omap3evm.o > objs-y$(CONFIG_FB_OMAP_LCD_MIPID) += lcd_mipid.o > > omapfb-objs := $(objs-yy) > diff --git a/drivers/video/omap/lcd_omap3evm.c > b/drivers/video/omap/lcd_omap3evm.c > new file mode 100644 > index 000..1c3d814 > --- /dev/null > +++ b/drivers/video/omap/lcd_omap3evm.c > @@ -0,0 +1,191 @@ > +/* > + * LCD panel support for the TI OMAP3 EVM board > + * > + * Author: Steve Sakoman > + * > + * Derived from drivers/video/omap/lcd-apollon.c > + * > + * This program is free software; you can redistribute it and/or modify it > + * under the terms of the GNU General Public License as published by the > + * Free Software Foundation; either version 2 of the License, or (at your > + * option) any later version. > + * > + * This program is distributed in the hope that it will be useful, but > + * WITHOUT ANY WARRANTY; without even the implied warranty of > + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU > + * General Public License for more details. > + * > + * You should have received a copy of the GNU General Public License along > + * with this program; if not, write to the Free Software Foundation, Inc., > + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. > + */ > + > +#include > +#include > +#include > +#include > + > +#include > +#include > +#include > + > +#define LCD_PANEL_ENABLE_GPIO 153 > +#define LCD_PANEL_LR2 > +#define LCD_PANEL_UD3 > +#define LCD_PANEL_INI 152 > +#define LCD_PANEL_QVGA 154 > +#define LCD_PANEL_RESB 155 > + > +#define LCD_XRES 480 > +#define LCD_YRES 640 > +#define LCD_PIXCLOCK 26000 /* in kHz */ > + You can drop defines used only once. There are no such defines for other panels. > +#define ENABLE_VDAC_DEDICATED0x03 > +#define ENABLE_VDAC_DEV_GRP 0x20 > +#define ENABLE_VPLL2_DEDICATED 0x05 > +#define ENABLE_VPLL2_DEV_GRP 0xE0 > + > +#define TWL_LED_LEDEN0x00 > +#define TWL_PWMA_PWMAON 0x00 > +#define TWL_PWMA_PWMAOFF 0x01 > + > +static unsigned int bklight_level; > + > +static int omap3evm_panel_init(struct lcd_panel *panel, > + struct omapfb_device *fbdev) > +{ > + gpio_request(LCD_PANEL_LR, "LCD lr"); > + gpio_request(LCD_PANEL_UD, "LCD ud"); > + gpio_request(LCD_PANEL_INI, "LCD ini"); > + gpio_request(LCD_PANEL_RESB, "LCD resb"); > + gpio_request(LCD_PANEL_QVGA, "LCD qvga"); > + > + gpio_direction_output(LCD_PANEL_RESB, 1); > + gpio_direction_output(LCD_PANEL_INI, 1); > + gpio_direction_output(LCD_PANEL_QVGA, 0); > + gpio_direction_output(LCD_PANEL_LR, 1); > + gpio_direction_output(LCD_PANEL_UD, 1); > + > + twl4030_i2c_write_u8(TWL4030_MODULE_LED, 0x11, TWL_LED_LEDEN); > + twl4030_i2c_write_u8(TWL4030_MODULE_PWMA, 0x01, TWL_PWMA_PWMAON); > + twl4030_i2c_write_u8(TWL4030_MODULE_PWMA, 0x02, TWL_PWMA_PWMAOFF); > + bklight_level = 100; > + > + return 0; > +} > + > +static void omap3evm_panel_cleanup(struct lcd_panel *panel) > +{ Should the requested gpios be freed? > +} > + > +static int omap3evm_panel_enable(struct lcd_panel *panel) > +{ > + gpio_set_value(LCD_PANEL_ENABLE_GPIO, 0); > + return 0; > +} > + > +static void omap3evm_panel_disable(struct lcd_panel *panel) > +{ > + gpio_set_value(LCD_PANEL_ENABLE_GPIO, 1); > +} > + > +static unsigned long omap3evm_panel_get_caps(struct lcd_panel *panel) > +{ > + return 0; > +} > + > +static int omap3evm_bklight_setlevel(struct lcd_panel *panel, > + unsigned int level) > +{ > + u8 c; > + if ((level >= 0) && (level <= 100)) { > + c = (125 * (100 - level)) / 100 + 2; > + twl4030_i2c_write_u8(TWL4030_MODULE_PWMA, c, TWL_PWMA_PWMAOFF); > + bklight_level = level; > + } > + return 0; > +} > + > +static unsigned int omap3evm_bkli
Re: [Linux-fbdev-devel] [PATCH 07/20] omapfb: Add support for the 3430SDP LCD
On Thu, 4 Jun 2009 20:52:32 +0300 Imre Deak wrote: > From: Kevin Hilman > > The 3430SDP uses the same panel as the 2430SDP. The main difference > are in the GPIO lines used for panel enable and backlight, and the > VAUX register/commands sent to the TWL4030 power subsystem. > > Also, some misc. whitespace cleanups. > > Signed-off-by: Kevin Hilman > Signed-off-by: Tony Lindgren > Fixed-by: Tony Lindgren > CC: linux-arm-ker...@lists.arm.linux.org.uk > Signed-off-by: Imre Deak > --- Acked-by: Krzysztof Helt -- Dobra czy zla wiadomosc? Zawsze warto oszczedzac. Teraz 5,5%. Sprawdz > http://link.interia.pl/f21b0 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 06/20] omapfb: Add support for the OMAP2EVM LCD
On Thu, 4 Jun 2009 20:52:31 +0300 Imre Deak wrote: > From: arun c > > omap2evm LCD supports VGA and QVGA resolution, by default its in VGA mode. > > Signed-off-by: Arun C > Signed-off-by: Tony Lindgren > Fixed-by: Jarkko Nikula > Fixed-by: David Brownell > Signed-off-by: Imre Deak > --- > drivers/video/omap/Makefile |1 + > drivers/video/omap/lcd_omap2evm.c | 189 > + > 2 files changed, 190 insertions(+), 0 deletions(-) > create mode 100644 drivers/video/omap/lcd_omap2evm.c > > diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile > index 7a37b03..c2475e3 100644 > --- a/drivers/video/omap/Makefile > +++ b/drivers/video/omap/Makefile > @@ -27,6 +27,7 @@ objs-y$(CONFIG_MACH_OMAP_OSK) += lcd_osk.o > > objs-y$(CONFIG_MACH_OMAP_APOLLON) += lcd_apollon.o > objs-y$(CONFIG_MACH_OMAP_2430SDP) += lcd_2430sdp.o > +objs-y$(CONFIG_MACH_OMAP2EVM) += lcd_omap2evm.o > objs-y$(CONFIG_FB_OMAP_LCD_MIPID) += lcd_mipid.o > > omapfb-objs := $(objs-yy) diff --git a/drivers/video/omap/lcd_omap2evm.c b/drivers/video/omap/lcd_omap2evm.c new file mode 100644 index 000..2fc46c2 --- /dev/null +++ b/drivers/video/omap/lcd_omap2evm.c @@ -0,0 +1,189 @@ +/* + * LCD panel support for the MISTRAL OMAP2EVM board + * + * Author: Arun C + * + * Derived from drivers/video/omap/lcd_omap3evm.c + * Derived from drivers/video/omap/lcd-apollon.c + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include + +#include +#include +#include + +#define LCD_PANEL_ENABLE_GPIO 154 +#define LCD_PANEL_LR 128 +#define LCD_PANEL_UD 129 +#define LCD_PANEL_INI 152 +#define LCD_PANEL_QVGA 148 +#define LCD_PANEL_RESB 153 + +#define LCD_XRES 480 +#define LCD_YRES 640 +#define LCD_PIXCLOCK_MAX 2 /* in kHz */ You can drop defines used only once. There are no such defines for some other panels in your patches. + +#define TWL_LED_LEDEN 0x00 +#define TWL_PWMA_PWMAON0x00 +#define TWL_PWMA_PWMAOFF 0x01 + +static unsigned int bklight_level; + +static int omap2evm_panel_init(struct lcd_panel *panel, + struct omapfb_device *fbdev) +{ + gpio_request(LCD_PANEL_ENABLE_GPIO, "LCD enable"); + gpio_request(LCD_PANEL_LR, "LCD lr"); + gpio_request(LCD_PANEL_UD, "LCD ud"); + gpio_request(LCD_PANEL_INI, "LCD ini"); + gpio_request(LCD_PANEL_QVGA, "LCD qvga"); + gpio_request(LCD_PANEL_RESB, "LCD resb"); + + gpio_direction_output(LCD_PANEL_ENABLE_GPIO, 1); + gpio_direction_output(LCD_PANEL_RESB, 1); + gpio_direction_output(LCD_PANEL_INI, 1); + gpio_direction_output(LCD_PANEL_QVGA, 0); + gpio_direction_output(LCD_PANEL_LR, 1); + gpio_direction_output(LCD_PANEL_UD, 1); + + twl4030_i2c_write_u8(TWL4030_MODULE_LED, 0x11, TWL_LED_LEDEN); + twl4030_i2c_write_u8(TWL4030_MODULE_PWMA, 0x01, TWL_PWMA_PWMAON); + twl4030_i2c_write_u8(TWL4030_MODULE_PWMA, 0x02, TWL_PWMA_PWMAOFF); + bklight_level = 100; + + return 0; +} + +static void omap2evm_panel_cleanup(struct lcd_panel *panel) +{ Should the requested gpios be freed? +} + +static int omap2evm_panel_enable(struct lcd_panel *panel) +{ + gpio_set_value(LCD_PANEL_ENABLE_GPIO, 0); + return 0; +} + +static void omap2evm_panel_disable(struct lcd_panel *panel) +{ + gpio_set_value(LCD_PANEL_ENABLE_GPIO, 1); +} + +static unsigned long omap2evm_panel_get_caps(struct lcd_panel *panel) +{ + return 0; +} + +static int omap2evm_bklight_setlevel(struct lcd_panel *panel, + unsigned int level) +{ + u8 c; + if ((level >= 0) && (level <= 100)) { + c = (125 * (100 - level)) / 100 + 2; + twl4030_i2c_write_u8(TWL4030_MODULE_PWMA, c, TWL_PWMA_PWMAOFF); + bklight_level = level; + } + return 0; +} + +static unsigned int omap2evm_bklight_getlevel(struct lcd_panel *panel) +{ + return bklight_level; +} + +static unsigned int omap2evm_bklight_getmaxlevel(struct lcd_panel *panel) +{ + return 100; +} + +struct lcd_panel omap2evm_panel = { + .name = "omap2evm", + .
Re: [Linux-fbdev-devel] [PATCH 05/20] omapfb: Add support for the 2430SDP LCD
On Thu, 4 Jun 2009 20:52:30 +0300 Imre Deak wrote: > From: Hunyue Yau > > Add glue to control the 2430SDP LCD as a frame buffer device > using the existing dispc.c driver under omapfb. > > Signed-off-by: Hunyue Yau > Signed-off-by: Kevin Hilman > Signed-off-by: Tony Lindgren > Fixed-by: Kevin Hilman > Fixed-by: Sergio Aguirre > Fixed-by: Francisco Alecrim > Fixed-by: Tony Lindgren > Fixed-by: David Brownell > Signed-off-by: Imre Deak > --- > drivers/video/omap/Makefile |1 + > drivers/video/omap/lcd_2430sdp.c | 196 > ++ > 2 files changed, 197 insertions(+), 0 deletions(-) > create mode 100644 drivers/video/omap/lcd_2430sdp.c > > diff --git a/drivers/video/omap/Makefile b/drivers/video/omap/Makefile > index 2bf94ad..7a37b03 100644 > --- a/drivers/video/omap/Makefile > +++ b/drivers/video/omap/Makefile > @@ -26,6 +26,7 @@ objs-$(CONFIG_ARCH_OMAP15XX)$(CONFIG_MACH_OMAP_INNOVATOR) > += lcd_inn1510.o > objs-y$(CONFIG_MACH_OMAP_OSK) += lcd_osk.o > > objs-y$(CONFIG_MACH_OMAP_APOLLON) += lcd_apollon.o > +objs-y$(CONFIG_MACH_OMAP_2430SDP) += lcd_2430sdp.o > objs-y$(CONFIG_FB_OMAP_LCD_MIPID) += lcd_mipid.o > > omapfb-objs := $(objs-yy) diff --git a/drivers/video/omap/lcd_2430sdp.c b/drivers/video/omap/lcd_2430sdp.c new file mode 100644 index 000..5bcbb8d --- /dev/null +++ b/drivers/video/omap/lcd_2430sdp.c @@ -0,0 +1,196 @@ +/* + * LCD panel support for the TI 2430SDP board + * + * Copyright (C) 2007 MontaVista + * Author: Hunyue Yau + * + * Derived from drivers/video/omap/lcd-apollon.c + * + * This program is free software; you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation; either version 2 of the License, or (at your + * option) any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License along + * with this program; if not, write to the Free Software Foundation, Inc., + * 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA. + */ + +#include +#include +#include +#include +#include + +#include +#include +#include + +#define SDP2430_LCD_PANEL_BACKLIGHT_GPIO 91 +#define SDP2430_LCD_PANEL_ENABLE_GPIO 154 +#define SDP3430_LCD_PANEL_BACKLIGHT_GPIO 24 +#define SDP3430_LCD_PANEL_ENABLE_GPIO 28 + +static unsigned backlight_gpio; +static unsigned enable_gpio; + +#define LCD_PANEL_BACKLIGHT_GPIO 91 +#define LCD_PANEL_ENABLE_GPIO 154 +#define LCD_PIXCLOCK_MAX 5400 /* freq 5.4 MHz */ +#define PM_RECEIVER TWL4030_MODULE_PM_RECEIVER +#define ENABLE_VAUX2_DEDICATED 0x09 +#define ENABLE_VAUX2_DEV_GRP0x20 + + +#define t2_out(c, r, v) twl4030_i2c_write_u8(c, r, v) + + +static int sdp2430_panel_init(struct lcd_panel *panel, + struct omapfb_device *fbdev) +{ + if (machine_is_omap_3430sdp()) { + enable_gpio= SDP3430_LCD_PANEL_ENABLE_GPIO; + backlight_gpio = SDP3430_LCD_PANEL_BACKLIGHT_GPIO; + } else { + enable_gpio= SDP2430_LCD_PANEL_ENABLE_GPIO; + backlight_gpio = SDP2430_LCD_PANEL_BACKLIGHT_GPIO; + } The same assingments in both clauses. No if() is required. + + gpio_request(enable_gpio, "LCD enable");/* LCD panel */ + gpio_request(backlight_gpio, "LCD bl"); /* LCD backlight */ + gpio_direction_output(enable_gpio, 0); + gpio_direction_output(backlight_gpio, 0); + + return 0; +} + +static void sdp2430_panel_cleanup(struct lcd_panel *panel) +{ Should the requested gpios be freed? +} + +static int sdp2430_panel_enable(struct lcd_panel *panel) +{ + u8 ded_val, ded_reg; + u8 grp_val, grp_reg; + + if (machine_is_omap_3430sdp()) { + ded_reg = TWL4030_VAUX3_DEDICATED; + ded_val = ENABLE_VAUX3_DEDICATED; + grp_reg = TWL4030_VAUX3_DEV_GRP; + grp_val = ENABLE_VAUX3_DEV_GRP; + + if (omap_rev() > OMAP3430_REV_ES1_0) { + t2_out(PM_RECEIVER, ENABLE_VPLL2_DEDICATED, + TWL4030_VPLL2_DEDICATED); + t2_out(PM_RECEIVER, ENABLE_VPLL2_DEV_GRP, + TWL4030_VPLL2_DEV_GRP); + } + } else { + ded_reg = TWL4030_VAUX2_DEDICATED; + ded_val = ENABLE_VAUX2_DEDICATED; + grp_reg = TWL4030_VAUX2_DEV_GRP; + grp_val = ENABLE_VAUX2_DEV_GRP; + } Again, please put the same assingments outside the if () clause. + + gpio_set_value(enable_gpio, 1); + gpio_set_value(backlight_gpio, 1);
Re: [Linux-fbdev-devel] [PATCH 04/20] omapfb: Add support for the Amstrad Delta LCD
On Thu, 4 Jun 2009 20:52:29 +0300 Imre Deak wrote: > From: Jonathan McDowell > > This is an updated version of the LCD driver for the Amstrad Delta to > take into account the recent changes to the omapfb infrastructure. The > Delta features a 480x320 12 bit DSTN panel. > > Signed-off-by: Jonathan McDowell > Signed-off-by: Tony Lindgren > Signed-off-by: Imre Deak > --- Acked-by: Krzysztof Helt -- Masz juz dosc wysokich rachunkow? Wygraj nowa mozliwosc komunikacji! Sprawdz >>> http://link.interia.pl/f21d2 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 01/20] omapfb: Add support for the Apollon LCD
On Thu, 4 Jun 2009 20:52:26 +0300 Imre Deak wrote: > From: Kyungmin Park > > Signed-off-by: Kyungmin Park > Signed-off-by: Imre Deak > --- Acked-by: Krzysztof Helt -- Masz juz dosc wysokich rachunkow? Wygraj nowa mozliwosc komunikacji! Sprawdz >>> http://link.interia.pl/f21d2 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [Linux-fbdev-devel] [PATCH 00/20] omapfb: Add support for new LCDs / misc fixes
On Thu, 4 Jun 2009 20:52:25 +0300 Imre Deak wrote: > Hi, > > I'd like to ask for the merging of this patchset into Linus' tree. > It adds support for new LCDs on OMAP based boards (01-12) and fixes > generic parts of the omapfb driver (13-20). The changes have been > staged in the Linux OMAP tree for quite a long time, so they should > be safe to be merged. > I will review your patches over next weekend. Best regards, Krzysztof -- Dodaj ogloszenie motoryzacyjne za 0 zl! Tylko na mobile.interia.pl Sprawdz >>> http://link.interia.pl/f21b7 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 6/8] ARM: OMAP2/3: Change omapfb to use clkdev for dispc and rfbi
On Thu, 14 May 2009 10:49:59 -0700 Tony Lindgren wrote: > This makes the framebuffer work on omap3. > > Also fix the clk_get usage for checkpatch.pl > "ERROR: do not use assignment in if condition". > > Cc: Imre Deak > Cc: linux-fbdev-de...@lists.sourceforge.net > Signed-off-by: Tony Lindgren > --- Acked-by: Krzysztof Helt > arch/arm/mach-omap2/clock24xx.c |8 > arch/arm/mach-omap2/clock34xx.c | 10 +- > drivers/video/omap/dispc.c | 16 +--- > drivers/video/omap/rfbi.c |8 +--- > 4 files changed, 23 insertions(+), 19 deletions(-) > > diff --git a/arch/arm/mach-omap2/clock24xx.c b/arch/arm/mach-omap2/clock24xx.c > index ff9b4c0..e4cef33 100644 > --- a/arch/arm/mach-omap2/clock24xx.c > +++ b/arch/arm/mach-omap2/clock24xx.c > @@ -103,10 +103,10 @@ static struct omap_clk omap24xx_clks[] = { > CLK(NULL, "mdm_ick", &mdm_ick, CK_243X), > CLK(NULL, "mdm_osc_ck", &mdm_osc_ck,CK_243X), > /* DSS domain clocks */ > - CLK(NULL, "dss_ick", &dss_ick, CK_243X | CK_242X), > - CLK(NULL, "dss1_fck", &dss1_fck, CK_243X | CK_242X), > - CLK(NULL, "dss2_fck", &dss2_fck, CK_243X | CK_242X), > - CLK(NULL, "dss_54m_fck", &dss_54m_fck, CK_243X | CK_242X), > + CLK("omapfb", "ick", &dss_ick, CK_243X | CK_242X), > + CLK("omapfb", "dss1_fck", &dss1_fck, CK_243X | CK_242X), > + CLK("omapfb", "dss2_fck", &dss2_fck, CK_243X | CK_242X), > + CLK("omapfb", "tv_fck", &dss_54m_fck, CK_243X | CK_242X), > /* L3 domain clocks */ > CLK(NULL, "core_l3_ck", &core_l3_ck,CK_243X | CK_242X), > CLK(NULL, "ssi_fck", &ssi_ssr_sst_fck, CK_243X | CK_242X), > diff --git a/arch/arm/mach-omap2/clock34xx.c b/arch/arm/mach-omap2/clock34xx.c > index a057539..ba05aa4 100644 > --- a/arch/arm/mach-omap2/clock34xx.c > +++ b/arch/arm/mach-omap2/clock34xx.c > @@ -197,11 +197,11 @@ static struct omap_clk omap34xx_clks[] = { > CLK("omap_rng", "ick", &rng_ick, CK_343X), > CLK(NULL, "sha11_ick",&sha11_ick, CK_343X), > CLK(NULL, "des1_ick", &des1_ick, CK_343X), > - CLK(NULL, "dss1_alwon_fck", &dss1_alwon_fck, CK_343X), > - CLK(NULL, "dss_tv_fck", &dss_tv_fck,CK_343X), > - CLK(NULL, "dss_96m_fck", &dss_96m_fck, CK_343X), > - CLK(NULL, "dss2_alwon_fck", &dss2_alwon_fck, CK_343X), > - CLK(NULL, "dss_ick", &dss_ick, CK_343X), > + CLK("omapfb", "dss1_fck", &dss1_alwon_fck, CK_343X), > + CLK("omapfb", "tv_fck", &dss_tv_fck,CK_343X), > + CLK("omapfb", "video_fck",&dss_96m_fck, CK_343X), > + CLK("omapfb", "dss2_fck", &dss2_alwon_fck, CK_343X), > + CLK("omapfb", "ick", &dss_ick, CK_343X), > CLK(NULL, "cam_mclk", &cam_mclk, CK_343X), > CLK(NULL, "cam_ick", &cam_ick, CK_343X), > CLK(NULL, "csi2_96m_fck", &csi2_96m_fck, CK_343X), > diff --git a/drivers/video/omap/dispc.c b/drivers/video/omap/dispc.c > index dfb72f5..3668df2 100644 > --- a/drivers/video/omap/dispc.c > +++ b/drivers/video/omap/dispc.c > @@ -880,23 +880,25 @@ static irqreturn_t omap_dispc_irq_handler(int irq, void > *dev) > > static int get_dss_clocks(void) > { > - if (IS_ERR((dispc.dss_ick = clk_get(dispc.fbdev->dev, "dss_ick" { > - dev_err(dispc.fbdev->dev, "can't get dss_ick\n"); > + dispc.dss_ick = clk_get(dispc.fbdev->dev, "ick"); > + if (IS_ERR(dispc.dss_ick)) { > + dev_err(dispc.fbdev->dev, "can't get ick\n"); > return PTR_ERR(dispc.dss_ick); > } > > - if (IS_ERR((dispc.dss1_fck = clk_get(dispc.fbdev->dev, "dss1_fck" { > + dispc.dss1_fck = clk_get(dispc.fbdev->dev, "dss1_fck"); > + if (IS_ERR(dispc.dss1_fck)) { > dev_err(dispc.fbdev->dev, "can't get dss1_fck\n"); > clk_put(dispc.dss_ick); > return PTR_ERR(dispc.dss1_
Re: [Linux-fbdev-devel] [PATCH] OMAP 2/3 V4L2 display driver on video planes
On Sun, 05 Oct 2008 07:57:20 -0400 Robert William Fuller <[EMAIL PROTECTED]> wrote: > > The 80 column rule is retarded. None of this code needs to fit on punch > cards, nor is it COBOL. There are legitimate reasons to have lines > longer than 80 columns. No matter how simple a program is, it is likely > to have an expression that is longer than 80 characters. Most people's > displays are wider than 80 columns these days. Vertical real estate is > at a greater premium than horizontal real estate these days with wider > aspect ratio monitors, which better approximate the human field of > vision. Why make people scan more than one line for a single expression? > A printed page is still 80 column with very readable characters. The human vision may be better approximated by wide screen monitors but human reading vision not. That's why nobody publish a printed newspaper or a book in a "wide-page" format. Even more, one can hardly find a newspaper which has no columns (each line as wide as a whole page). My two cents, Krzysztof -- Dzwon taniej na zagraniczne komorki! Sprawdz >> http://link.interia.pl/f1f26 -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html