aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/video
AgeCommit message (Collapse)AuthorFilesLines
2011-08-24udlfb: Enable fb_defio by defaultBernie Thompson1-2/+2
Enables page fault based detection of mmap writes to the framebuffer, which allows standard fbdev apps (like the generic fbdev xorg driver) to work on DisplayLink devices. Not all bugs are shaken out of the fb_defio path of udlfb, but it's tantalizingly close, so this seems a good time to enable by default. Alternatively, option can be disabled when running with an xorg driver that can more directly communicate damaged regions of the framebuffer via IOCTL. This is a simpler, higher perf option, when available. Signed-off-by: Bernie Thompson <bernie@plugable.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2011-08-24udlfb: Add module option to do without shadow framebufferStuart Hopkins1-2/+8
By default, udlfb allocates a 2nd buffer to shadow what's across the bus on the USB device. It can operate without this shadow, but then it cannot tell which pixels have changed, and must send all. Saves host memory, but worsens the USB 2.0 bus bottleneck. This option allows users in very low memory situations (e.g. bifferboard) to optionally turn off this shadow framebuffer. Signed-off-by: Stuart Hopkins <stuart@linux-depot.com> Signed-off-by: Bernie Thompson <bernie@plugable.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2011-08-24udlfb: fix issues found with Sparse static analysisDr. David Alan Gilbert1-14/+16
Add __user casting, a missing copy_from_user, and proper boolean Signed-off-by: Dr. David Alan Gilbert <linux@treblig.org> Signed-off-by: Bernie Thompson <bernie@plugable.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2011-08-24udlfb: Search config descriptor if not at device levelAndrew Kephart1-5/+16
For at least one DisplayLink device, the vendor-specific information can be found in the config descriptor instead of as a separate, device-level descriptor. This patch searches the current interface (of the current config descriptor) for the DL vendor-specific descriptor. Signed-off-by: Andrew Kephart <akephart@akephart.org> Signed-off-by: Bernie Thompson <bernie@plugable.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2011-08-24udlfb: add more comprehensive support for DPMS FB_BLANK_* modesBernie Thompson1-24/+73
Fixes earlier problems where monitor would not return from blank Test with any DisplayLink-based USB 2.0 graphics adapter sudo nano /sys/class/graphics/fb?/blank and write out single digit FB_BLANK_* code from include/linux/fb.h Supports on (0), blank (1), suspend (2,3), powerdown (4) Signed-off-by: Bernie Thompson <bernie@plugable.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2011-08-19vt8623fb: use display information in info not in var for panningLaurent Pinchart1-4/+5
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19vt8500lcdfb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19vga16fb: use display information in info not in var for panningLaurent Pinchart1-1/+1
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19vfb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19tridentfb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19sm501fb: use display information in info not in var for panningLaurent Pinchart1-3/+3
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19sisfb: use display information in info not in var for panningLaurent Pinchart1-20/+10
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Fix checkpatch.pl warnings in the surrounding code. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19savagefb: use display information in info not in var for panningLaurent Pinchart1-9/+7
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Also use the aligned fix.line_length and not the (possible) unaligned xres_virtual. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Tormod Volden <debian.tormod@gmail.com>
2011-08-19s3fb: use display information in info not in var for panningLaurent Pinchart1-3/+4
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19s3c-fb: use display information in info not in var for panningLaurent Pinchart1-1/+1
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Jingoo Han <jg1.han@samsung.com>
2011-08-19pm3fb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19pm2fb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19neofb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19mx3fb: use display information in info not in var for panningLaurent Pinchart1-3/+3
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Also use the aligned fix.line_length and not the (possible) unaligned xres_virtual. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
2011-08-19mb862xxfb: use display information in info not in var for panningLaurent Pinchart1-1/+1
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19intelfb: use display information in info not in var for panningLaurent Pinchart1-3/+3
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19imsttfb: use display information in info not in var for panningLaurent Pinchart1-1/+1
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19hgafb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19gxt4500: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19g364fb: use display information in info not in var for panningLaurent Pinchart1-2/+3
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: unicore32: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Guan Xuetao <gxt@mprc.pku.edu.cn> Acked-by: Guan Xuetao <gxt@mprc.pku.edu.cn>
2011-08-19fbdev: da8xx: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19radeonfb: use display information in info not in var for panningLaurent Pinchart1-5/+5
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Also use the aligned fix.line_length and not the (possible) unaligned xres_virtual. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19atmel_lcdfb: use display information in info not in var for panningLaurent Pinchart1-6/+9
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Reviewed-by: Wolfram Sang <w.sang@pengutronix.de>
2011-08-19arkfb: use display information in info not in var for panningLaurent Pinchart1-4/+5
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19acornfb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19acornfb: Dont BUG() on invalid pan parametersLaurent Pinchart1-1/+2
The driver currently BUG()s if the pan parameters passed directly from userspace are invalid. Return -EINVAL instead. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-1968328fb: use display information in info not in var for panningLaurent Pinchart1-2/+2
We must not use any information in the passed var besides xoffset, yoffset and vmode as otherwise applications might abuse it. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_meram: Remove unneeded sh_mobile_meram.hLaurent Pinchart3-36/+4
The drivers/video/sh_mobile_meram.h header contains unused definitions and declarations. Move the only used macro to sh_mobile_meram.c, and remove the header. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_meram: Fix MExxCTL register save on runtime PM suspendLaurent Pinchart1-1/+1
To reset the ICB on resume the MExxCTL register needs to be OR'ed with MExxCTL_WBF | MExxCTL_WF | MExxCTL_RF, no set to that value. Fix this. This fixes corruption at the bottom of the display when resuming from runtime PM. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_meram: Validate ICB configuration outside mutexLaurent Pinchart1-10/+8
Validate as much of the requested ICB configuration as possible outside of the mutex-protected region when registering ICBs. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_meram: Replace hardcoded register values with macrosLaurent Pinchart1-24/+69
Instead of hardcoding register values through the driver, define macros for individual register bits using the register name and the bit name, and use the macros. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_lcdc: Restart LCDC in runtime PM resume handlerLaurent Pinchart2-45/+5
Instead of restoring registers blindly, restart the LCDC by going through the startup sequence when resuming from runtime PM suspend. All registers are now correctly initialized in the right order. As a side effect, this also gets rid fo a possible panning restore issue caused by always saving the frame buffer base address registers from set A instead of the currently active set. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_lcdc: Store the frame buffer base address when panningLaurent Pinchart1-13/+9
When the frame buffer base address is changed by a panning operation, store it in the channel structure. It will be reused when runtime PM code will use __sh_mobile_lcdc_start(). Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_lcdc: Split LCDC start code from sh_mobile_lcdc_startLaurent Pinchart2-156/+160
Splitting the LCDC start code from clock, MERAM and panel management will make the code usable by runtime PM. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_lcdc: Compute clock pattern using divider denominatorLaurent Pinchart1-4/+6
The clock divider pattern is computed based on the dot clock register value which stores the divider denumerator. However, when using a 1:1 divider ratio, the register is programmed with a value that must not be interpreted as a denominator. This results in a shift left operation with a value of 32, which produces undefined behaviour. Compute the clock pattern using the divider denominator, not the dot clock register value. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_lcdc: Don't acknowlege interrupts unintentionallyLaurent Pinchart1-12/+8
The LDINTR register caries both interrupt enable and interrupt status bits. When setting or clearing interrupt enable bits, write all status bits to 1 to avoid acknowledging interrupts by mistake. When acknowledging interrupts, write 1 to all non-triggered interrupt bits to avoid losing interrupts. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_lcdc: Replace hardcoded register values with macrosLaurent Pinchart1-110/+92
Instead of hardcoding register values through the driver, define macros for individual register bits using the register name and the bit name, and use the macros. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2011-08-19fbdev: sh_mobile_lcdc: Turn dot clock on before resuming from runtime PMLaurent Pinchart1-3/+3
Resuming from runtime PM restores all LCDC registers. If the dot clock is off at that time display panning information will be corrupted. Turn the dot clock on before resuming from runtime PM. Similarly, turn the clock off after suspending the LCDC. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Tested-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
2011-08-19fbdev: sh_mobile_meram: Backup/restore device registers on shutdown/resumeDamian Hobson-Garcia1-0/+71
Save and reconfigure the MERAM registers when the MERAM is powered down and restored Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp>
2011-08-19fbdev: sh_mobile_meram: Move private data from .h to .cDamian Hobson-Garcia2-8/+8
There is no reason for sh_mobile_meram_priv to be in the .h file since it should be private to sh_mobile_meram.c Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp>
2011-08-19fbdev: sh_mobile_meram: Enable/disable MERAM along with LCDCDamian Hobson-Garcia1-0/+4
The MERAM reference counts should be tied to the two LCDC devices (LCD/HDMI) so that when they are enable/disabled, the MERAM is as well. Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp>
2011-08-19fbdev: sh_mobile_meram: Enable runtime PMDamian Hobson-Garcia1-0/+5
Signed-off-by: Damian Hobson-Garcia <dhobsong@igel.co.jp>
2011-08-17viafb: replace strict_strtoul to kstrto* and check return valueWang Shaoyan1-58/+68
This commit replace the function strict_strtoul(becasue commit 33ee3b2e), and check the return value to avoid such warning: drivers/video/via/viafbdev.c:1992: warning: ignoring return value of 'kstrtoul', declared with attribute warn_unused_result Signed-off-by: Wang Shaoyan <wangshaoyan.pt@taobao.com> Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2011-08-17Merge commit 'v3.1-rc2' into HEADFlorian Tobias Schandinat201-5519/+18946