alistair23-linux/drivers/video
Heiko Stübner 1f45f9dbb3 fb_defio: add first_io callback
With this optional callback the driver is notified when the first page
is entered into the pagelist and a new deferred_io call is scheduled.

A possible use-case for this is runtime-pm. In the first_io call
	pm_runtime_get()
could be called, which starts an asynchronous runtime_resume of the
device. In the deferred_io callback a call to
	pm_runtime_barrier()
makes the sure, the device is resumed by then and a
	pm_runtime_put()
may put the device back to sleep.

Also, some SoCs may use the runtime-pm system to determine if they
are able to enter deeper idle states. Therefore it is necessary to
keep the use-count from the first written page until the conclusion
of the screen update, to prevent the system from going to sleep before
completing the pending update.

Two users of defio were using kmalloc to allocate the structure.
These allocations are changed to kzalloc, to prevent uninitialised
.first_io members in those drivers.

Signed-off-by: Heiko Stübner <heiko@sntech.de>
Signed-off-by: Florian Tobias Schandinat <FlorianSchandinat@gmx.de>
2012-04-29 19:35:31 +00:00
..
aty module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
backlight ARM: SoC fixes for 3.4-rc2 2012-04-05 22:13:39 -07:00
console Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
exynos video: exynos_dp: add analog and pll control setting 2012-04-16 04:19:00 +00:00
geode
i810 module_param: make bool parameters really bool (drivers/video/i810) 2012-01-12 23:28:59 +00:00
intelfb fbdev fixes for 3.3 2012-02-07 15:54:02 -08:00
kyro kyrofb: fix on x86_64 2012-04-08 14:27:08 +00:00
logo module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
matrox fbdev: matroxfb: Fix compilation after fb_var_screeninfo change 2011-12-21 02:26:11 +00:00
mb862xx
mbx drivers/video/mbx/mbxfb.c: correct ioremap_nocache test 2012-04-21 21:48:48 +00:00
msm video: msm: Fix section mismatches in mddi.c 2012-04-18 17:10:34 +00:00
nvidia drivers/video/nvidia/nvidia.c: fix warning 2012-01-12 20:13:03 -08:00
omap ARM: board specific updates 2012-03-27 16:27:28 -07:00
omap2 ARM: cleanups of io includes 2012-03-29 18:02:10 -07:00
pnx4008 video: pnx4008: convert drivers/video/pnx4008/* to use module_platform_driver() 2011-12-19 20:21:43 +00:00
riva riva/fbdev: fix several -Wuninitialized 2012-02-13 02:59:14 +00:00
savage Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
sis
vermilion
via Merge branch 'viafb-next' of git://github.com/schandinat/linux-2.6 into fbdev-next 2012-03-13 23:19:58 +00:00
68328fb.c
acornfb.c
acornfb.h
amba-clcd.c fbdev: amba: Enable module alias autogeneration for AMBA drivers 2011-11-22 10:58:33 +00:00
amifb.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
arcfb.c
arkfb.c
asiliantfb.c
atafb.c
atafb.h
atafb_iplan2p2.c
atafb_iplan2p4.c
atafb_iplan2p8.c
atafb_mfb.c
atafb_utils.h
atmel_lcdfb.c atmel_lcdfb: support 16bit BGR:565 mode, remove unsupported 15bit modes 2012-01-28 19:54:10 +00:00
au1100fb.c fbdev: fix au1*fb builds 2012-04-08 14:27:09 +00:00
au1100fb.h
au1200fb.c fbdev: fix au1*fb builds 2012-04-08 14:27:09 +00:00
au1200fb.h
bf54x-lq043fb.c video: use gpio_request_one 2012-01-28 20:50:11 +00:00
bf537-lq035.c video: use gpio_request_one 2012-01-28 20:50:11 +00:00
bfin-lq035q1-fb.c video: use gpio_request_one 2012-01-28 20:50:11 +00:00
bfin-t350mcqb-fb.c treewide: Fix comment and string typo 'bufer' 2011-12-06 09:53:40 +01:00
bfin_adv7393fb.c fbdev: bfin_adv7393fb: Drop needless include 2012-03-21 10:27:37 +00:00
bfin_adv7393fb.h
broadsheetfb.c
bt431.h Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
bt455.h Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
bw2.c
c2p.h
c2p_core.h
c2p_iplan2.c
c2p_planar.c
carminefb.c
carminefb.h
carminefb_regs.h
cfbcopyarea.c
cfbfillrect.c
cfbimgblt.c
cg3.c
cg6.c
cg14.c
chipsfb.c
cirrusfb.c Merge branch 'fbdev-next' of git://github.com/schandinat/linux-2.6 2012-01-14 15:11:19 -08:00
clps711xfb.c
cobalt_lcdfb.c cobalt_lcdfb: LCD panel framebuffer support for SEAD-3 platform. 2012-04-29 19:34:05 +00:00
controlfb.c Drivers: video: controlfb: fixed a brace coding style issue 2011-11-22 01:00:16 +00:00
controlfb.h
cyber2000fb.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
cyber2000fb.h
da8xx-fb.c fbdev: da8xx: add support for SP10Q010 display 2012-03-19 22:59:47 +00:00
dnfb.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
edid.h
efifb.c
ep93xx-fb.c drivers/video/ep93xx-fb.c: clean up error-handling code 2012-04-21 21:47:49 +00:00
epson1355fb.c
fb-puv3.c
fb_ddc.c
fb_defio.c fb_defio: add first_io callback 2012-04-29 19:35:31 +00:00
fb_draw.h
fb_notify.c
fb_sys_fops.c
fbcmap.c
fbcvt.c
fbmem.c udlfb: remove sysfs framebuffer device with USB .disconnect() 2012-03-15 13:35:22 +00:00
fbmon.c
fbsysfs.c
ffb.c
fm2fb.c
fsl-diu-fb.c drivers/video: compile fixes for fsl-diu-fb.c 2012-01-28 19:35:24 +00:00
g364fb.c
gbefb.c
grvga.c grvga: fix section mismatch warnings 2012-01-03 16:02:55 +00:00
gxt4500.c
hecubafb.c
hgafb.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
hitfb.c
hpfb.c
i740_reg.h Resurrect Intel740 driver: i740fb 2012-02-15 04:31:21 +00:00
i740fb.c i740fb: fix compile error when CONFIG_MTRR is not selected 2012-02-19 19:11:51 +00:00
igafb.c
imsttfb.c
imxfb.c
jz4740_fb.c
Kconfig cobalt_lcdfb: LCD panel framebuffer support for SEAD-3 platform. 2012-04-29 19:34:05 +00:00
leo.c
macfb.c macfb: fix black and white modes 2012-01-22 14:50:02 +01:00
macmodes.c
macmodes.h
Makefile Resurrect Intel740 driver: i740fb 2012-02-15 04:31:21 +00:00
maxinefb.c
metronomefb.c
modedb.c
mx3fb.c dmaengine/dma_slave: introduce inline wrappers 2012-03-21 19:20:22 +05:30
mxsfb.c i.MX28: Shut down the LCD controller to avoid BootROM sampling bug 2012-04-21 21:53:12 +00:00
n411.c
neofb.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
nuc900fb.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00
nuc900fb.h
offb.c offb: Fix setting of the pseudo-palette for >8bpp 2012-01-03 12:09:25 +11:00
output.c
p9100.c
platinumfb.c
platinumfb.h
pm2fb.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
pm3fb.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
pmag-aa-fb.c
pmag-ba-fb.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
pmagb-b-fb.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
ps3fb.c
pvr2fb.c drivers/video/pvr2fb.c: ensure arguments to request_irq and free_irq are compatible 2012-03-13 23:17:31 +00:00
pxa3xx-gcu.c video: pxa3xx-gcu: Simplify the logic to exit while loop in pxa3xx_gcu_wait_idle 2012-04-09 16:18:15 +00:00
pxa3xx-gcu.h
pxa168fb.c drivers/video/pxa168fb.c: use devm_ functions 2012-02-24 00:49:59 +00:00
pxa168fb.h
pxafb.c video: pxafb: add clk_prepare/clk_unprepare calls 2012-03-21 10:29:01 +00:00
pxafb.h
q40fb.c Remove all #inclusions of asm/system.h 2012-03-28 18:30:03 +01:00
s1d13xxxfb.c
s3c-fb.c video: s3c-fb: add runtime_get/put to suspend/resume 2012-04-16 04:17:59 +00:00
s3c2410fb.c video: s3c2410: fix checkpatch error and warnings 2011-12-03 22:10:43 +00:00
s3c2410fb.h
s3fb.c s3fb: fix Virge/VX 2011-12-21 02:25:21 +00:00
sa1100fb.c FB: sa11x0: convert to use platform resource and ioremap() 2012-02-24 09:39:59 +00:00
sa1100fb.h FB: sa11x0: convert to use platform resource and ioremap() 2012-02-24 09:39:59 +00:00
sbuslib.c Drivers: video: sbuslib: fixed a brace coding style issue 2011-11-22 01:00:24 +00:00
sbuslib.h
sgivwfb.c
sh7760fb.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00
sh_mipi_dsi.c fbdev: sh_mipi_dsi: add extra phyctrl for sh_mipi_dsi_info 2012-03-21 07:24:01 +00:00
sh_mobile_hdmi.c fbdev: sh_mobile_hdmi: Don't access LCDC fb_info 2012-03-12 22:40:54 +01:00
sh_mobile_lcdcfb.c fbdev: sh_mobile_meram: Remove unneeded sanity checks 2012-03-12 22:41:14 +01:00
sh_mobile_lcdcfb.h fbdev: sh_mobile_lcdc: Don't store copy of platform data 2012-03-12 22:41:12 +01:00
sh_mobile_meram.c fbdev: sh_mobile_meram: Implement system suspend/resume 2012-03-12 22:41:14 +01:00
skeletonfb.c skeletonfb: fixed module exit function typo. 2012-04-15 21:44:02 +00:00
sm501fb.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00
smscufx.c fb_defio: add first_io callback 2012-04-29 19:35:31 +00:00
sstfb.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
sticore.h
stifb.c
sunxvr500.c
sunxvr1000.c
sunxvr2500.c
svgalib.c
syscopyarea.c
sysfillrect.c
sysimgblt.c
tcx.c
tdfxfb.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
tgafb.c
tmiofb.c
tridentfb.c
udlfb.c fb_defio: add first_io callback 2012-04-29 19:35:31 +00:00
uvesafb.c video:uvesafb: Fix oops that uvesafb try to execute NX-protected page 2012-04-09 16:05:57 +00:00
valkyriefb.c
valkyriefb.h
vesafb.c
vfb.c module_param: make bool parameters really bool (drivers & misc) 2012-01-13 09:32:20 +10:30
vga16fb.c
vgastate.c
vt8500lcdfb.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00
vt8500lcdfb.h
vt8623fb.c
w100fb.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00
w100fb.h
wm8505fb.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00
wm8505fb_regs.h
wmt_ge_rops.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00
wmt_ge_rops.h
xen-fbfront.c Xen: consolidate and simplify struct xenbus_driver instantiation 2012-01-04 17:01:17 -05:00
xilinxfb.c video: convert drivers/video/* to use module_platform_driver() 2011-12-03 22:08:42 +00:00