aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/input/Kconfig1
-rw-r--r--drivers/video/Kconfig1
-rw-r--r--drivers/video/broadsheetfb.c2
-rw-r--r--drivers/video/fb_defio.c4
-rw-r--r--drivers/video/hecubafb.c2
-rw-r--r--drivers/video/metronomefb.c2
-rw-r--r--drivers/video/xen-fbfront.c2
-rw-r--r--include/linux/fb.h1
8 files changed, 10 insertions, 5 deletions
diff --git a/drivers/input/Kconfig b/drivers/input/Kconfig
index 50af91ebd075..07c2cd43109c 100644
--- a/drivers/input/Kconfig
+++ b/drivers/input/Kconfig
@@ -165,6 +165,7 @@ config XEN_KBDDEV_FRONTEND
165 tristate "Xen virtual keyboard and mouse support" 165 tristate "Xen virtual keyboard and mouse support"
166 depends on XEN_FBDEV_FRONTEND 166 depends on XEN_FBDEV_FRONTEND
167 default y 167 default y
168 select XEN_XENBUS_FRONTEND
168 help 169 help
169 This driver implements the front-end of the Xen virtual 170 This driver implements the front-end of the Xen virtual
170 keyboard and mouse device driver. It communicates with a back-end 171 keyboard and mouse device driver. It communicates with a back-end
diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 6b89eb55ed32..e9f193e6b27e 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -2066,6 +2066,7 @@ config XEN_FBDEV_FRONTEND
2066 select FB_SYS_IMAGEBLIT 2066 select FB_SYS_IMAGEBLIT
2067 select FB_SYS_FOPS 2067 select FB_SYS_FOPS
2068 select FB_DEFERRED_IO 2068 select FB_DEFERRED_IO
2069 select XEN_XENBUS_FRONTEND
2069 default y 2070 default y
2070 help 2071 help
2071 This driver implements the front-end of the Xen virtual 2072 This driver implements the front-end of the Xen virtual
diff --git a/drivers/video/broadsheetfb.c b/drivers/video/broadsheetfb.c
index 509cb92e8731..df9ccb901d86 100644
--- a/drivers/video/broadsheetfb.c
+++ b/drivers/video/broadsheetfb.c
@@ -470,7 +470,7 @@ static int __devinit broadsheetfb_probe(struct platform_device *dev)
470 par->read_reg = broadsheet_read_reg; 470 par->read_reg = broadsheet_read_reg;
471 init_waitqueue_head(&par->waitq); 471 init_waitqueue_head(&par->waitq);
472 472
473 info->flags = FBINFO_FLAG_DEFAULT; 473 info->flags = FBINFO_FLAG_DEFAULT | FBINFO_VIRTFB;
474 474
475 info->fbdefio = &broadsheetfb_defio; 475 info->fbdefio = &broadsheetfb_defio;
476 fb_deferred_io_init(info); 476 fb_deferred_io_init(info);
diff --git a/drivers/video/fb_defio.c b/drivers/video/fb_defio.c
index e59c08320886..44ce908a478b 100644
--- a/drivers/video/fb_defio.c
+++ b/drivers/video/fb_defio.c
@@ -144,7 +144,9 @@ static const struct address_space_operations fb_deferred_io_aops = {
144static int fb_deferred_io_mmap(struct fb_info *info, struct vm_area_struct *vma) 144static int fb_deferred_io_mmap(struct fb_info *info, struct vm_area_struct *vma)
145{ 145{
146 vma->vm_ops = &fb_deferred_io_vm_ops; 146 vma->vm_ops = &fb_deferred_io_vm_ops;
147 vma->vm_flags |= ( VM_IO | VM_RESERVED | VM_DONTEXPAND ); 147 vma->vm_flags |= ( VM_RESERVED | VM_DONTEXPAND );
148 if (!(info->flags & FBINFO_VIRTFB))
149 vma->vm_flags |= VM_IO;
148 vma->vm_private_data = info; 150 vma->vm_private_data = info;
149 return 0; 151 return 0;
150} 152}
diff --git a/drivers/video/hecubafb.c b/drivers/video/hecubafb.c
index 0b4bffbe67c8..f9d77adf035d 100644
--- a/drivers/video/hecubafb.c
+++ b/drivers/video/hecubafb.c
@@ -253,7 +253,7 @@ static int __devinit hecubafb_probe(struct platform_device *dev)
253 par->send_command = apollo_send_command; 253 par->send_command = apollo_send_command;
254 par->send_data = apollo_send_data; 254 par->send_data = apollo_send_data;
255 255
256 info->flags = FBINFO_FLAG_DEFAULT; 256 info->flags = FBINFO_FLAG_DEFAULT | FBINFO_VIRTFB;
257 257
258 info->fbdefio = &hecubafb_defio; 258 info->fbdefio = &hecubafb_defio;
259 fb_deferred_io_init(info); 259 fb_deferred_io_init(info);
diff --git a/drivers/video/metronomefb.c b/drivers/video/metronomefb.c
index df1f757a6161..661bfd20d194 100644
--- a/drivers/video/metronomefb.c
+++ b/drivers/video/metronomefb.c
@@ -700,7 +700,7 @@ static int __devinit metronomefb_probe(struct platform_device *dev)
700 if (retval < 0) 700 if (retval < 0)
701 goto err_free_irq; 701 goto err_free_irq;
702 702
703 info->flags = FBINFO_FLAG_DEFAULT; 703 info->flags = FBINFO_FLAG_DEFAULT | FBINFO_VIRTFB;
704 704
705 info->fbdefio = &metronomefb_defio; 705 info->fbdefio = &metronomefb_defio;
706 fb_deferred_io_init(info); 706 fb_deferred_io_init(info);
diff --git a/drivers/video/xen-fbfront.c b/drivers/video/xen-fbfront.c
index 54cd91610174..91a68e9eb66d 100644
--- a/drivers/video/xen-fbfront.c
+++ b/drivers/video/xen-fbfront.c
@@ -440,7 +440,7 @@ static int __devinit xenfb_probe(struct xenbus_device *dev,
440 fb_info->fix.type = FB_TYPE_PACKED_PIXELS; 440 fb_info->fix.type = FB_TYPE_PACKED_PIXELS;
441 fb_info->fix.accel = FB_ACCEL_NONE; 441 fb_info->fix.accel = FB_ACCEL_NONE;
442 442
443 fb_info->flags = FBINFO_FLAG_DEFAULT; 443 fb_info->flags = FBINFO_FLAG_DEFAULT | FBINFO_VIRTFB;
444 444
445 ret = fb_alloc_cmap(&fb_info->cmap, 256, 0); 445 ret = fb_alloc_cmap(&fb_info->cmap, 256, 0);
446 if (ret < 0) { 446 if (ret < 0) {
diff --git a/include/linux/fb.h b/include/linux/fb.h
index de9c722e7b90..369767bd873e 100644
--- a/include/linux/fb.h
+++ b/include/linux/fb.h
@@ -763,6 +763,7 @@ struct fb_tile_ops {
763 * takes over; acceleration engine should be in a quiescent state */ 763 * takes over; acceleration engine should be in a quiescent state */
764 764
765/* hints */ 765/* hints */
766#define FBINFO_VIRTFB 0x0004 /* FB is System RAM, not device. */
766#define FBINFO_PARTIAL_PAN_OK 0x0040 /* otw use pan only for double-buffering */ 767#define FBINFO_PARTIAL_PAN_OK 0x0040 /* otw use pan only for double-buffering */
767#define FBINFO_READS_FAST 0x0080 /* soft-copy faster than rendering */ 768#define FBINFO_READS_FAST 0x0080 /* soft-copy faster than rendering */
768 769