summaryrefslogtreecommitdiffstats
path: root/drivers/video/omap2 (follow)
Commit message (Collapse)AuthorAgeFilesLines
* Merge git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6Linus Torvalds2011-01-1318-843/+1380
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/fbdev-2.6: (29 commits) video: move SH_MIPI_DSI/SH_LCD_MIPI_DSI to the top of menu fbdev: Implement simple blanking in pseudocolor modes for vt8500lcdfb video: imx: Update the manufacturer's name nuc900fb: don't treat NULL clk as an error s3c2410fb: don't treat NULL clk as an error video: tidy up modedb formatting. video: matroxfb: Correct video option in comments and kernel config help. fbdev: sh_mobile_hdmi: simplify pointer handling fbdev: sh_mobile_hdmi: framebuffer notifiers have to be registered fbdev: sh_mobile_hdmi: add command line option to use the preferred EDID mode OMAP: DSS2: Introduce omap_channel as an omap_dss_device parameter, add new overlay manager. OMAP: DSS2: Use dss_features to handle DISPC bits removed on OMAP4 OMAP: DSS2: LCD2 Channel Changes for DISPC OMAP: DSS2: Change remaining DISPC functions for new omap_channel argument OMAP: DSS2: Introduce omap_channel argument to DISPC functions used by interface drivers OMAP: DSS2: Represent DISPC register defines with channel as parameter OMAP: DSS2: Add dss_features for omap4 and overlay manager related features OMAP: DSS2: Clean up DISPC color mode validation checks OMAP: DSS2: Add back authors of panel-generic.c based drivers OMAP: DSS2: remove generic DPI panel driver duplicated panel drivers ...
| * OMAP: DSS2: Introduce omap_channel as an omap_dss_device parameter, add new ↵Sumit Semwal2011-01-104-44/+72
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | overlay manager. A panel connects to one of the overlay managers of DSS through some interface block. On OMAP4, specifying the type of the display is not sufficient to conclude which manager the panel should be connected to. Hence, a new member 'channel' is introduced in omap_dss_device structure to determine which manager the panel uses. The dss_recheck_connections() called in dss_driver_probe() uses this channel parameter to set the correct manager to the corresponding omap_dss_device. The channel parameter is used only once to ensure the correct managers are set for each panel. The parameter dssdev->manager->id will take care of ensuring that the panel and then the interface driver configures the correct DISPC channel. Also, add a new Overlay Manager in manager.c, make other changes needed for LCD2 channel. Signed-off-by: Sumit Semwal <sumit.semwal@ti.com> Signed-off-by: Mukund Mittal <mmittal@ti.com> Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Use dss_features to handle DISPC bits removed on OMAP4Archit Taneja2011-01-101-1/+11
| | | | | | | | | | | | | | | | DISPC_CONFIG bits LCDENABLEPOL, LCDENABLESIGNAL, PCKFREEENABLE and FUNCGATED have been removed from OMAP4, use dss_features to handle them correctly. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: LCD2 Channel Changes for DISPCSumit Semwal2011-01-102-40/+243
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DISPC functions are modified in order to work when the manager is LCD2. This includes: Adding new IRQs specific to LCD2 and their handling. Provide dumps of the new manager's registers. Provide dumps of the new manager's clocks. Checks for channel for registers DISPC_CONTROL2 and DISPC_CONFIG2 which can't be parametrized. Signed-off-by: Sumit Semwal <sumit.semwal@ti.com> Signed-off-by: Mukund Mittal <mmittal@ti.com> Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Change remaining DISPC functions for new omap_channel argumentSumit Semwal2011-01-105-54/+68
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The following dispc functions are also changed to incorporate channel as an argument: -dispc_lclk_rate() -dispc_pclk_rate() -dispc_set_pol_freq() -dispc_set_clock_div() -dispc_get_clock_div() Signed-off-by: Sumit Semwal <sumit.semwal@ti.com> Signed-off-by: Mukund Mittal <mmittal@ti.com> Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Archit Taneja <archit@ti.com> [tomi.valkeinen@nokia.com: fixed trivial compile error] Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Introduce omap_channel argument to DISPC functions used by ↵Sumit Semwal2011-01-106-50/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | interface drivers The interface drivers (dsi.c, sdi.c etc) need to call dispc functions with dssdev->manager->id as a parameter to specify the DISPC channel which they want to configure/use, this is required as the same functions are now used to configure dispc registers of different channels. The following dispc functions are changed to incorporate channel as an argument: -dispc_enable_fifohandcheck() -dispc_set_lcd_size() -dispc_set_parallel_interface_mode() -dispc_set_tft_data_lines() -dispc_set_lcd_display_type() -dispc_set_lcd_timings() Signed-off-by: Sumit Semwal <sumit.semwal@ti.com> Signed-off-by: Mukund Mittal <mmittal@ti.com> Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Archit Taneja <archit@ti.com> [tomi.valkeinen@nokia.com: fixed trivial compile error] Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Represent DISPC register defines with channel as parameterSumit Semwal2011-01-101-88/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | On OMAP4, we have a new DISPC channel for Overlay Manager LCD2. There is a set of regsiters for LCD2 channel similar to the existing LCD channel, like DISPC_CONTROL2, DISPC_DIVISOR2, DISPC_CONFIG2 and so on. Introduce new enum members for LCD2 Channel and corresponding Overlay Manager in display.h. Represent the following DISPC register defines with channel as a parameter to differentiate between LCD and LCD2 registers (and also DIGIT in some cases): DISPC_DEFAULT_COLOR, DISPC_TRANS_COLOR, DISPC_TIMING_H, DISPC_TIMING_V, DISPC_POL_FREQ, DISPC_DIVISOR, DISPC_SIZE_LCD, DISPC_DATA_CYCLEk, DISPC_CPR_COEF_R, DISPC_CPR_COEF_G and DISPC_CPR_COEF_B This parametrization helps in reducing the number of register defines for DISPC. Replace the existing reads/writes to these registers in this new way. Also, Introduce defines for registers DISPC_CONTROL2 and DISPC_CONFIG2 which are used exclusively for LCD2 channel. Signed-off-by: Sumit Semwal <sumit.semwal@ti.com> Signed-off-by: Mukund Mittal <mmittal@ti.com> Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Add dss_features for omap4 and overlay manager related featuresArchit Taneja2011-01-102-3/+47
| | | | | | | | | | | | | | | | Initialize a dss_features struct for omap4. Add support for LCD2 manager by introducing a new member in dss_feat_id. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Clean up DISPC color mode validation checksArchit Taneja2011-01-103-48/+14
| | | | | | | | | | | | | | | | | | | | | | | | The supported set of color modes varies for different DISPC pipelines(plane) and omap version. This makes the checks for validation of a color mode more complicated as new omap versions are added. A dss_feature function is created which tells if a color_mode is supported for a plane on the current omap revision. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Add back authors of panel-generic.c based driversBryan Wu2011-01-101-0/+10
| | | | | | | | | | Signed-off-by: Bryan Wu <bryan.wu@canonical.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: remove generic DPI panel driver duplicated panel driversBryan Wu2011-01-105-524/+0
| | | | | | | | | | | | | | | | Still keep sharp_ls_panel driver, because it contains blacklight control driver. Signed-off-by: Bryan Wu <bryan.wu@canonical.com> Acked-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Add generic DPI panel display driverBryan Wu2011-01-103-0/+364
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Generic DPI panel driver includes the driver and 4 similar panel configurations. It will match the panel name which is passed from platform data and setup the right configurations. With generic DPI panel driver, we can remove those 4 duplicated panel display drivers. In the future, it is simple for us just add new panel configuration date in panel-generic-dpi.c to support new display panel. Signed-off-by: Bryan Wu <bryan.wu@canonical.com> Acked-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: OMAPFB: Add null pointer checkSamreen2011-01-101-2/+3
| | | | | | | | | | | | | | | | A null pointer check added. And using kstrdup() instead of kmalloc() & strcpy() Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Add NEC NL8048HL11-01B display panelErik Gilling2011-01-103-0/+333
| | | | | | | | | | | | | | | | | | | | | | | | NEC WVGA LCD NL8048HL11-01B panel support has been added. This panel is being used in zoom2/zoom3/3630 sdp boards. Signed-off-by: Mukund Mittal <mmittal@ti.com> Signed-off-by: Rajkumar N <rajkumar.nagarajan@ti.com> Signed-off-by: Samreen <samreen@ti.com> CC: Subbu Venkatesh <subramani.venkatesh@windriver.com> CC: Erik Gilling <konkers@android.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP3630: DSS2: Enable Pre-Multiplied Alpha SupportRajkumar N2011-01-104-9/+70
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable dss to process color formats with pre-mulitplied alpha. With this we can have alpha values defined for each pixel and hence can have different blending values for each pixel. sysfs entry has been created for this and pre-multiplied alpha support is turned off by default. Signed-off-by: Sudeep Basavaraj <sudeep.basavaraj@ti.com> Signed-off-by: Rajkumar N <rajkumar.nagarajan@ti.com> Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP3: DSS2: Split OMAP3 has feature for 3430 & 3630Samreen2011-01-102-3/+18
| | | | | | | | | | | | | | | | | | Splitting the OMAP3 dss has feature separately for omap3430 & omap3630 Signed-off-by: Samreen <samreen@ti.com> Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Fix: Read correct bit in dispc_enable_alpha_blending()Archit Taneja2011-01-101-2/+1
| | | | | | | | | | | | | | | | Read correct DISPC_CONFIG bit when the channel is DIGIT, remove extra line at the end of the function. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
* | Merge branch 'master' into for-nextJiri Kosina2010-12-221-5/+14
|\| | | | | | | | | | | | | | | | | | | Conflicts: MAINTAINERS arch/arm/mach-omap2/pm24xx.c drivers/scsi/bfa/bfa_fcpim.c Needed to update to apply fixes for which the old branch was too outdated.
| * OMAP: DSS: VRAM: Align start & size of vram to 2MTomi Valkeinen2010-12-151-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Align the start address and size of VRAM area to 2M as per comments from Russell King: > > So, why SZ_2M? > > Firstly, that's the granularity which we allocate page tables - one > Linux page table covers 2MB of memory. We want to avoid creating page > tables for the main memory mapping as that increases TLB pressure through > the use of additional TLB entries, and more page table walks. > > Plus, we never used to allow the kernel's direct memory mapping to be > mapped at anything less than section size - this restriction has since > been lifted due to OMAP SRAM problems, but I'd rather we stuck with it > to ensure that we have proper behaviour from all parts of the system. > > Secondly, we don't want to end up with lots of fragmentation at the end > of the memory mapping as that'll reduce performance, not only by making > the pfn_valid() search more expensive. > > Emsuring a minimum allocation size and alignment makes sure that the > regions can be coalesced together into one block, and minimises run-time > expenses. > > So please, 2MB, or if you object, at the _very_ _least_ 1MB. But > definitely not PAGE_SIZE. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Acked-by: Tony Lindgren <tony@atomide.com>
| * OMAP: VRAM: Fix boot-time memory allocationTomi Valkeinen2010-11-101-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | Use memblock_free() and memblock_remove() to remove the allocated or reserved VRAM area from normal kernel memory. This is a slightly modified version of patches from Felipe Contreras and Namhyung Kim. Reported-by: Felipe Contreras <felipe.contreras@gmail.com> Reported-by: Namhyung Kim <namhyung@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
| * OMAP: VRAM: improve VRAM error printsTomi Valkeinen2010-11-101-3/+9
| | | | | | | | | | | | | | | | Improve the error prints to give more information about the offending address & size. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
* | backlight: constify backlight_opsLionel Debroux2010-11-161-1/+1
|/ | | | | | | | | | | | backlight_device_register has been expecting a const "ops" argument, and using it as such, since 9905a43b2d563e6f89e4c63c4278ada03f2ebb14. Let's make the remaining backlight_ops instances const. Inspired by hunks of the grsecurity patch, updated for newer kernels. Signed-off-by: Lionel Debroux <lionel_debroux@yahoo.fr> Acked-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
* Merge branch 'for-linus' of git://gitorious.org/linux-omap-dss2/linuxLinus Torvalds2010-10-2617-188/+452
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://gitorious.org/linux-omap-dss2/linux: OMAP: DSS2: don't power off a panel twice OMAP: DSS2: OMAPFB: Allow usage of def_vrfb only for omap2,3 OMAP: DSS2: OMAPFB: make VRFB depends on OMAP2,3 OMAP: DSS2: OMAPFB: Allow FB_OMAP2 to build without VRFB arm/omap: simplify conditional OMAP: DSS2: DSI: Remove extra iounmap in error path OMAP: DSS2: Use dss_features framework on DSS2 code OMAP: DSS2: Introduce dss_features files video/omap: remove mux.h include ARM: omap/fb: move get_fbmem_region() to .init.text ARM: omap/fb: move omapfb_reserve_sram to .init.text ARM: omap/fb: move omap_init_fb to .init.text OMAP: DSS2: OMAPFB: swap front and back porches for both hsync and vsync OMAP: DSS2: make filter coefficient tables human readable OMAP: DSS2: Add SPI dependency to Kconfig of ACX565AKM panel
| * OMAP: DSS2: don't power off a panel twiceStanley.Miao2010-10-226-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | If we blank the panel by echo 1 > /sys/devices/platform/omapfb/graphics/fb0/blank Then, we reboot the sytem, the kernel will crash at drivers/video/omap2/dss/core.c:323 This is because the panel is closed twice. Now check the state of a dssdev to forbid a panel is power on or power off twice. Signed-off-by: Stanley.Miao <stanley.miao@windriver.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: OMAPFB: Allow usage of def_vrfb only for omap2,3Senthilvadivu Guruswamy2010-10-221-0/+10
| | | | | | | | | | | | | | | | | | VRFB is supported only on OMAP2 and OMAP3 platforms. If VRFB rotation is not supported by the hardware and the user requests VRFB rotation, print a warning and ignore the request from the user. Signed-off-by: Senthilvadivu Guruswamy <svadivu@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: OMAPFB: make VRFB depends on OMAP2,3Senthilvadivu Guruswamy2010-10-221-1/+1
| | | | | | | | | | | | | | config VRFB should depend on ARCH_OMAP2 or ARCH_OMAP3. Signed-off-by: Senthilvadivu Guruswamy <svadivu@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: DSI: Remove extra iounmap in error pathSenthilvadivu Guruswamy2010-10-221-1/+0
| | | | | | | | | | | | | | | | iounmap is already done in label err2: so extra iounmap in the error handling path could be removed. Signed-off-by: Senthilvadivu Guruswamy <svadivu@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Use dss_features framework on DSS2 codeArchit Taneja2010-10-224-56/+60
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Calls init functions of dss_features during dss_probe, and the following features are made omapxxxx independent: - number of managers, overlays - supported color modes for each overlay - supported displays for each manager - global aplha, and restriction of global alpha for video1 pipeline - The register field ranges : FIRHINC, FIRVINC, FIFOHIGHTHRESHOLD FIFOLOWTHRESHOLD and FIFOSIZE Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Introduce dss_features filesArchit Taneja2010-10-223-1/+242
| | | | | | | | | | | | | | | | | | Add dss_features.c and dss_features.h for the dss_features framework. This framework will be used to move all cpu_is_xxx() and similar calls to a single place. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: OMAPFB: swap front and back porches for both hsync and vsyncTasslehoff Kjappfot2010-10-221-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | Framebuffer's left and right margins are relative to the active pixel area. Front and back porches are relative to the sync area. Left margin was wrongly assigned to front porch (and right to back), this patch fixes it. Signed-off-by: tasskjapp@gmail.com Reviewed-by: Russ.Dill@gmail.com Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: make filter coefficient tables human readableGrazvydas Ignotas2010-09-291-120/+94
| | | | | | | | | | | | | | | | | | | | | | Reorganize scaler FIR filter data as FIR value tables from raw register values. This makes them easier to understand and simplifies register programming code. No functional changes. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| * OMAP: DSS2: Add SPI dependency to Kconfig of ACX565AKM panelJarkko Nikula2010-09-291-1/+1
| | | | | | | | | | | | | | | | | | | | This panel driver is using SPI for its communication so add CONFIG_SPI dependency. Signed-off-by: Jarkko Nikula <jhnikula@gmail.com> Cc: Roger Quadros <roger.quadros@nokia.com> Cc: Tomi Valkeinen <tomi.valkeinen@nokia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
* | memblock/arm: Fix memblock_region_is_memory() typoYinghai Lu2010-10-081-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Fix typo in commit dbe3039 ("memblock/arm: Use memblock_region_is_memory() for omap fb") - it should be memblock_is_region_memory(). Reported-by: Tomi Valkeinen <tomi.valkeinen@nokia.com> Signed-off-by: Yinghai Lu <yinghai@kernel.org> Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org> Cc: Felipe Balbi <balbi@ti.com> Cc: Kevin Hilman <khilman@deeprootsystems.com> Cc: ext Grazvydas Ignotas <notasas@gmail.com> LKML-Reference: <4CABFADA.9020305@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
* | Merge commit 'v2.6.36-rc3' into x86/memblockIngo Molnar2010-08-3115-577/+1226
|\| | | | | | | | | | | | | | | | | | | Conflicts: arch/x86/kernel/trampoline.c mm/memblock.c Merge reason: Resolve the conflicts, update to latest upstream. Signed-off-by: Ingo Molnar <mingo@elte.hu>
| * Merge branch 'for-linus' of git://gitorious.org/linux-omap-dss2/linuxLinus Torvalds2010-08-0814-576/+1223
| |\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-linus' of git://gitorious.org/linux-omap-dss2/linux: (64 commits) OMAP: DSS2: OMAPFB: add support for FBIO_WAITFORVSYNC OMAP: DSS2: Replace strncmp() with sysfs_streq() in overlay_manager_store() OMAP: DSS2: Fix error path in omap_dsi_update() OMAP: DSS2: TDO35S: fix video signaling OMAP: DSS2: OMAPFB: Fix invalid bpp for PAL and NTSC modes OMAP: DSS2: OMAPFB: Fix probe error path OMAP3EVM: Replace vdvi regulator supply with vdds_dsi OMAP: DSS2: Remove extra return statement OMAP: DSS2: adjust YUV overlay width to be even OMAP: DSS2: OMAPFB: Fix sysfs mirror input check OMAP: DSS2: OMAPFB: Remove redundant color register range check OMAP: DSS2: OMAPFB: Remove redundant rotate range check OMAP: DSS2: OMAPFB: Check fb2display() return value OMAP: DSS2: Taal: Optimize enable_te, rotate, mirror when value unchanged OMAP: DSS2: DSI: detect unsupported update requests OMAP: DSS2: DSI: increase FIFO low threshold OMAP: DSS2: DSI: Add error IRQ mask for DSI complexIO OMAP: DSS2: DSI: Remove BTA after set_max_rx_packet_size OMAP: DSS2: change manual update scaling setup OMAP: DSS2: DSI: use BTA to end the frame transfer ...
| | * OMAP: DSS2: OMAPFB: add support for FBIO_WAITFORVSYNCGrazvydas Ignotas2010-08-051-0/+12
| | | | | | | | | | | | | | | | | | | | | | | | FBIO_WAITFORVSYNC is a stardard ioctl for waiting vsync, already used by some userspace, so add it as an alias for OMAPFB_WAITFORVSYNC. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: Replace strncmp() with sysfs_streq() in overlay_manager_store()Archit Taneja2010-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The function overlay_manager_store currently fails if the sysfs input is a prefix string of an existing overlay manager name. This occurs because strncmp compares the two strings only till the length of the input sysfs string. So a sysfs input "lcd" will match manager name "lcd2" which is incorrect behavior. The use of sysfs_streq here will prevent this false positive match to occur. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: Fix error path in omap_dsi_update()Archit Taneja2010-08-051-1/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | In the case of an error on calling dsi_update_screen_l4(), a successful framedone callback is still sent to panel-taal. An error should be returned to taal_update() instead. Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: TDO35S: fix video signalingIgor Grinberg2010-08-051-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | TDO35S samples the data on the falling adge of the pixel clock, therefore the data strobe should be on the raising edge. Signed-off-by: Igor Grinberg <grinberg@compulab.co.il> Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: OMAPFB: Fix invalid bpp for PAL and NTSC modesMaurus Cuelenaere2010-08-051-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | omapfb_mode_to_timings() sets the bpp to 0 when bootarg omapfb.mode is set to either "pal" or "ntsc". This patch corrects this by setting the bpp to 24, as would be done if omapdss_default_get_recommended_bpp() would be called. Signed-off-by: Maurus Cuelenaere <mcuelenaere@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: OMAPFB: Fix probe error pathAfzal Mohammed2010-08-051-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | Move sysfs entry creation to omapfb_probe() from omapfb_create_framebuffers(). This will make sure that sysfs entry is not left behind in case of unsuccessful probe due to failure in enabling fb0 of omapfb_create_framebuffers(). Signed-off-by: Afzal Mohammed <lazfamam@gmail.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: Remove extra return statementArchit Taneja2010-08-051-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | Remove extra return statement in omapdss_default_get_recommended_bpp from overlay.c Signed-off-by: Archit Taneja <archit@ti.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: adjust YUV overlay width to be evenTomi Valkeinen2010-08-051-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | An overlay in YUV mode has to have an even input width, because data for each pixel is divided between two adjacent pixels. The algorithm handling manual update overlay adjusting may adjust the overlay width to be odd. This patch adds a check for that situation, and makes the width even. The width is increased by one if it is possible (the unadjusted input width is larger than the width), and decreased by one if increasing is not possible. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: OMAPFB: Fix sysfs mirror input checkJani Nikula2010-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | Using bool silently converted input to 0 or 1, making the range check useless. Use unsigned long instead, and convert to bool later. Found by Coverity. Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: OMAPFB: Remove redundant color register range checkJani Nikula2010-08-051-5/+0
| | | | | | | | | | | | | | | | | | | | | Unsigned regno can never be less than zero. Found by Coverity. Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: OMAPFB: Remove redundant rotate range checkJani Nikula2010-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | Unsigned rotate can never be less than zero. Found by Coverity. Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: OMAPFB: Check fb2display() return valueJani Nikula2010-08-052-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | Make sure NULL return value of fb2display() is not referenced. Found by Coverity. Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: Taal: Optimize enable_te, rotate, mirror when value unchangedTomi Valkeinen2010-08-051-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | Skip any further processing of taal_enable_te(), taal_rotate(), and taal_mirror() if value remains unchanged. Signed-off-by: Jani Nikula <ext-jani.1.nikula@nokia.com> Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: DSI: detect unsupported update requestsTomi Valkeinen2010-08-051-0/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | OMAP DSS HW cannot send updates with odd widths. Normally the widths are made even while preparing the update. This patch adds a BUG_ON() to check if the update width is even. This is to detect broken updates cleanly, as otherwise the OMAP DSS HW will just halt, leading to obscure error situations. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
| | * OMAP: DSS2: DSI: increase FIFO low thresholdTomi Valkeinen2010-08-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current FIFO low threshold was too low, and caused the FIFO to run empty when core domain went to INA state between FIFO fills. This patch increases the low threshold to keep that from happening. The threshold values depend quite much on the HW and the use cases, so this should actually be somehow configurable from board files, perhaps. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>