diff options
author | Keith Whitwell <keith@tungstengraphics.com> | 2003-04-23 23:42:29 +0000 |
---|---|---|
committer | Keith Whitwell <keith@tungstengraphics.com> | 2003-04-23 23:42:29 +0000 |
commit | e15b0b6a1b95e4145363b15e1a581ee230b2f9a2 (patch) | |
tree | 8f596ee2d77469d27e017bdcea6bc55628d3d738 /linux-core | |
parent | 23a76c37594d3d423963c7b8610b64367e3ff9d8 (diff) |
Install dummy/noop read & poll fops unless the driver has replacements.
Diffstat (limited to 'linux-core')
-rw-r--r-- | linux-core/drmP.h | 2 | ||||
-rw-r--r-- | linux-core/drm_drv.c | 8 | ||||
-rw-r--r-- | linux-core/drm_fops.c | 13 |
3 files changed, 23 insertions, 0 deletions
diff --git a/linux-core/drmP.h b/linux-core/drmP.h index 2cdc5f09..8ebd1ec8 100644 --- a/linux-core/drmP.h +++ b/linux-core/drmP.h @@ -684,6 +684,8 @@ extern void DRM(vm_shm_close)(struct vm_area_struct *vma); extern int DRM(mmap_dma)(struct file *filp, struct vm_area_struct *vma); extern int DRM(mmap)(struct file *filp, struct vm_area_struct *vma); +extern unsigned int DRM(poll)(struct file *filp, struct poll_table_struct *wait); +extern ssize_t DRM(read)(struct file *filp, char *buf, size_t count, loff_t *off); /* Memory management support (drm_memory.h) */ extern void DRM(mem_init)(void); diff --git a/linux-core/drm_drv.c b/linux-core/drm_drv.c index 036cee35..dad961f8 100644 --- a/linux-core/drm_drv.c +++ b/linux-core/drm_drv.c @@ -84,6 +84,12 @@ #ifndef __HAVE_SG #define __HAVE_SG 0 #endif +#ifndef __HAVE_DRIVER_FOPS_READ +#define __HAVE_DRIVER_FOPS_READ 0 +#endif +#ifndef __HAVE_DRIVER_FOPS_POLL +#define __HAVE_DRIVER_FOPS_POLL 0 +#endif #ifndef DRIVER_PREINIT #define DRIVER_PREINIT() @@ -119,6 +125,8 @@ static struct file_operations DRM(fops) = { \ .ioctl = DRM(ioctl), \ .mmap = DRM(mmap), \ .fasync = DRM(fasync), \ + .poll = DRM(poll), \ + .read = DRM(read), \ } #endif diff --git a/linux-core/drm_fops.c b/linux-core/drm_fops.c index 3baac693..fc8618e1 100644 --- a/linux-core/drm_fops.c +++ b/linux-core/drm_fops.c @@ -113,4 +113,17 @@ int DRM(fasync)(int fd, struct file *filp, int on) return 0; } +#if !__HAVE_DRIVER_FOPS_POLL +unsigned int DRM(poll)(struct file *filp, struct poll_table_struct *wait) +{ + return 0; +} +#endif + +#if !__HAVE_DRIVER_FOPS_READ +ssize_t DRM(read)(struct file *filp, char *buf, size_t count, loff_t *off) +{ + return 0; +} +#endif |