summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2009-10-19DSS2: Fix omapfb framebuffer nameTomi Valkeinen
After clearing the fix and var screeninfos fix.id should be reset to the proper value. Move the relevant memset() and strncpy() calls into a helper function which does the right thing. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com> Conflicts: drivers/video/omap2/omapfb/omapfb-main.c
2009-10-19DSS2: Correctly determine if an interlaced display is usedTomi Valkeinen
When applying the settings to all the overlays ilace is initialzed to 0 in the beginning and then changed to 1 when the first overlay directed to an interlaced display is found. If there are more overlays after that one which are not directed to an interlaced display the code would still pass ilace=1 to the the dispc code which would halve the output height of the overlay. Fix the problem by correctly setting ilace for each overlay. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com> Conflicts: drivers/video/omap2/dss/manager.c
2009-10-19DSS2: Fix bottom field initial starting lineVille Syrjälä
When downscaling the bottom field offset may be several source lines. Unfortunately the registers for the initial accumulator value will only hold the fractional part of of that offset so the integer part must be added to the bottom field base address. The TV-out quality is significantly improved as a result. Additionally this fixes the bottom field offset with DMA rotation and mirroring enabled as it was previously miscalculated. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: isolate the SDI pads when SDI is disabledTomi Valkeinen
When SDI is disabled there is still ~1.6mA drain through the VSDI_CSI regulator. This seems to be internal to the SDI module, since even disconnecting the LCD panel doesn't get rid of the drain. Also disabling/resetting the SDI or the DSS module doesn't help. The only solution is to configure the SDI pads to safe mode with pull up resistors enabled on them when SDI gets disabled. Bootloader / platform code is still responsible for setting up the muxing, so in the driver check if all required pads are in SDI mode or all of them are in non-configured state. Signed-off-by: Imre Deak <imre.deak@nokia.com> Conflicts: arch/arm/plat-omap/include/mach/display.h
2009-10-19DSS2: let init_display return an error codeTomi Valkeinen
This is needed by an upcoming patch, in which sdi->init_display can fail. Signed-off-by: Imre Deak <imre.deak@nokia.com> Conflicts: drivers/video/omap2/dss/display.c drivers/video/omap2/dss/dpi.c drivers/video/omap2/dss/dsi.c drivers/video/omap2/dss/dss.h drivers/video/omap2/dss/rfbi.c drivers/video/omap2/dss/sdi.c drivers/video/omap2/dss/venc.c
2009-10-19DSS2: DSI: use INIT_COMPLETION, not init_completionTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: OMAPFB: Disable forced display update on fb closeTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: OMAPFB: first set TE, then update modeTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Fix documentationTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Use clkdevTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: CLK: change omapfb -> omapdss in clock frameworkTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: move to_dss_driver() and to_dss_device() to public headerTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Remove non-existing dsi power funcs from dss.hTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Implement function to verify lcd timingsTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: use sysfs_streq() to compare display namesTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: implement overlay_manager_infoTomi Valkeinen
Store manager config in similar as overlay config. Config is applied with mgr->apply(). Also change transparency color key variable names from color_key to trans_key. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Fix checkpatch complaintsTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Sharp panel: use regulator fwTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DSI: Use regulator frameworkTomi Valkeinen
DSI needs vdds_dsi regulator Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: VENC: venc uses regulator frameworkTomi Valkeinen
Venc needs vdda_dac regulator Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Panel driver changes for new device modelTomi Valkeinen
Changes to generic, samsung and sharp panel drivers Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: new device/driver modelTomi Valkeinen
Use better model for handling DSS devices and drivers. Remove omap_display, omap_ctrl and omap_panel structs, and add omap_dss_device and omap_dss_driver. DSS devices are added to DSS bus. The commit changes almost every part of DSS2, even if actual functionality should be changed only in few parts. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: VRFB: make vrfb_hw_context staticTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: OMAPFB: omapfb_get_ovl_colormode to staticTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DSI: Implement DSI bus lockTomi Valkeinen
DSI bus lock protects the DSI bus. Normally dsi driver acquires the lock, but if display drivers have their own workqueues, or similar, they need to acquire the bus lock before sending data. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DSI: reset perf frame counter when starting autoupdateTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DSI: implement timeout for DSI transferTomi Valkeinen
Proper transfer shutdown is still missing. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Reset WSS data only when changing TV standardVille Syrjälä
Do not reset the the WSS data every time the display is enabled. Only reset it when the TV standard changes since PAL and NTSC use different WSS data layouts. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: fix uninitialized var in OMAPFB_GET_CAPS IOCTLImre Deak
Spotted-by: Ville Syrjala <ville.syrjala@nokia.com> Signed-off-by: Imre Deak <imre.deak@nokia.com>
2009-10-19DSS2: support for querying the supported overlay color modesMayuresh Janorkar
Adds an IOCTL through which an application can iterate through the color modes supported by an overlay. Instead of a simple mode ID this will give the parameters needed to setup the FB, as this is what the application will do anyway. Signed-off-by: Mayuresh Janorkar <mayur@ti.com>
2009-10-19DSS2: Enable replication logic featureTomi Valkeinen
Replication logic will make colors a bit better on active matrix LCD when the fb is in 16bpp mode and the LCD interface is 18/24bpp. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Add venc debugfs fileVille Syrjälä
Actually make the venc register dump file visible in debugfs. Somehow this hunk got dropped when the venc debugfs file was originally added. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: Fix PAL/NTSC timingsVille Syrjälä
Fix the PAL/NTSC video timings. Only some of these values are actually specified for digital video, the rest were calculated based on the the analog timings. The analog timings differ from the digital timings anyway but these should be close to the truth. These values aren't actually needed by the VENC but it doesn't hurt to make them a bit more accurate. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: Add WSS supportVille Syrjälä
Add support for setting the widescreen signalling (WSS) data via sysfs. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: Allow independent rotation for each planeVille Syrjälä
Allow overlays attached to the same framebuffer to have different rotation settings. A new sysfs file overlays_rotate can be used to configure the rotation settings for each overlay. The total rotation for a single overlay is now '(var.rotate + overlays_rotate) % 4'. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: Do not swap xres/yres or change rotation in check_fb_var()Ville Syrjälä
Do not to change the actual rotation setting in check_fb_var() and also remove the xres/yres swap from the same place. Applications must now specify var.xres and var.yres in framebuffer coordinates. Eg. if you have a 480x800 framebuffer and want it rotated cw/ccw to a 800x480 display xres must be 480 and yres must be 800. So the application doesn't have to know if it's dealing with a 480x800 unrotated display or a 800x480 rotated display. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: DSI: Fix LP clockTomi Valkeinen
Outgoing LP clock is actually DSI fclk / 2 / clk_divisor. Also don't use hardcoded LP clock frequency, but get it from the board file. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DSI: Add support for external TE signalTomi Valkeinen
I hope this can be removed when the DSI displays work properly. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DSI: Improve perf-measurement outputTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DISPC: clear irqstatus for newly enabled irqsTomi Valkeinen
This fixes the problem that when requesting a new irq we could get the isr called too early in case irqstatus already had that irq flag on. Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: DISPC: fix irq handling lockingTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19DSS2: Swap field offset values w/ VRFB rotationVille Syrjälä
The field 0 and field 1 offset values were still incorrect when VRFB rotation is used. Swap them to put the fields into proper order. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
2009-10-19DSS2: VRFB: don't WARN when releasing inactive ctxImre Deak
Releasing an inactive context is valid, it can happen when the application first blanks the screen then frees the framebuffer. Signed-off-by: Imre Deak <imre.deak@nokia.com>
2009-10-19DSS2: DSI: tune the timings to be more relaxedTomi Valkeinen
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@nokia.com>
2009-10-19VRFB: add suspend/resume functionalityImre Deak
At the moment the VRFB context is restored at each core power domain OFF->ON transition. This is not optimal since the VRFB might be unused temporarily for example when the screen is blanked. Add a suspend / resume function to mark these unused periods during which we'll avoid thea the context restore. Use atomic bitops for ctx_map for consistency. Signed-off-by: Imre Deak <imre.deak@nokia.com>
2009-10-19VRFB: fix debug messagesImre Deak
Signed-off-by: Imre Deak <imre.deak@nokia.com>
2009-10-19DSS2: fix the usage of get_last_off_on_transaction_idImre Deak
The function returns int not unsigned since it can fail. Handle the failing case as if the context had been lost. So now: 1. No get_last_off_on_transaction_id func in platform data-> never restore the context 2. Return val < 0 -> force the restore 3. Return val >= 0 do the restore only if the counter has changed. Signed-off-by: Imre Deak <imre.deak@nokia.com>
2009-10-19DSS2: VRAM: Fix indentationTomi Valkeinen
2009-10-19DSS2: VRFB: save / restore contextImre Deak
The VRFB is part of the SMS and supplied by the core power domain; do the context saving while VRFB is configured and restore it along with the rest of the domain context. This patch only implements the restore functionality, but not the actual call to the restore. That belongs to PM functionality.
2009-10-19DSS2: Avoid div by zero when calculating required fclkVille Syrjälä
When calculating the required fclk rate for five tap filtering if the display width and output width are equal div by zero could occur. The TRM doesn't actually specify how this case should be handled but for now just skip the calculation which would trigger the div by zero. Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>