V4L/DVB (5774a): Remove CONFIG_BIGPHYS_AREA from zoran_driver
CONFIG_BIGPHYS_AREA is an out-of-tree kernel patch. It makes no sense to keep supporting this on mainstream. The out-of-tree compilation with CONFIG_BIGPHYS_AREA will still be preserved at the v4l-dvb development tree at: http://linuxtv.org/hg/v4l-dvb Signed-off-by: Mauro Carvalho Chehab <mchehab@infradead.org>
This commit is contained in:
Родитель
b7c97abd81
Коммит
890be2bb55
|
@ -183,14 +183,7 @@ static const int zoran_num_formats =
|
|||
(sizeof(zoran_formats) / sizeof(struct zoran_format));
|
||||
|
||||
// RJ: Test only - want to test BUZ_USE_HIMEM even when CONFIG_BIGPHYS_AREA is defined
|
||||
#if !defined(CONFIG_BIGPHYS_AREA)
|
||||
//#undef CONFIG_BIGPHYS_AREA
|
||||
#define BUZ_USE_HIMEM
|
||||
#endif
|
||||
|
||||
#if defined(CONFIG_BIGPHYS_AREA)
|
||||
# include <linux/bigphysarea.h>
|
||||
#endif
|
||||
|
||||
extern int *zr_debug;
|
||||
|
||||
|
@ -250,7 +243,6 @@ static void jpg_fbuffer_free(struct file *file);
|
|||
* Linux with the necessary memory left over).
|
||||
*/
|
||||
|
||||
#if defined(BUZ_USE_HIMEM) && !defined(CONFIG_BIGPHYS_AREA)
|
||||
static unsigned long
|
||||
get_high_mem (unsigned long size)
|
||||
{
|
||||
|
@ -314,7 +306,6 @@ get_high_mem (unsigned long size)
|
|||
|
||||
return hi_mem_ph;
|
||||
}
|
||||
#endif
|
||||
|
||||
static int
|
||||
v4l_fbuffer_alloc (struct file *file)
|
||||
|
@ -323,9 +314,7 @@ v4l_fbuffer_alloc (struct file *file)
|
|||
struct zoran *zr = fh->zr;
|
||||
int i, off;
|
||||
unsigned char *mem;
|
||||
#if defined(BUZ_USE_HIMEM) && !defined(CONFIG_BIGPHYS_AREA)
|
||||
unsigned long pmem = 0;
|
||||
#endif
|
||||
|
||||
/* we might have old buffers lying around... */
|
||||
if (fh->v4l_buffers.ready_to_be_freed) {
|
||||
|
@ -369,39 +358,6 @@ v4l_fbuffer_alloc (struct file *file)
|
|||
ZR_DEVNAME(zr), i, (unsigned long) mem,
|
||||
virt_to_bus(mem));
|
||||
} else {
|
||||
#if defined(CONFIG_BIGPHYS_AREA)
|
||||
/* Use bigphysarea_alloc_pages */
|
||||
|
||||
int n =
|
||||
(fh->v4l_buffers.buffer_size + PAGE_SIZE -
|
||||
1) / PAGE_SIZE;
|
||||
|
||||
mem =
|
||||
(unsigned char *) bigphysarea_alloc_pages(n, 0,
|
||||
GFP_KERNEL);
|
||||
if (mem == 0) {
|
||||
dprintk(1,
|
||||
KERN_ERR
|
||||
"%s: v4l_fbuffer_alloc() - bigphysarea_alloc_pages for V4L buf %d failed\n",
|
||||
ZR_DEVNAME(zr), i);
|
||||
v4l_fbuffer_free(file);
|
||||
return -ENOBUFS;
|
||||
}
|
||||
fh->v4l_buffers.buffer[i].fbuffer = mem;
|
||||
fh->v4l_buffers.buffer[i].fbuffer_phys =
|
||||
virt_to_phys(mem);
|
||||
fh->v4l_buffers.buffer[i].fbuffer_bus =
|
||||
virt_to_bus(mem);
|
||||
dprintk(4,
|
||||
KERN_INFO
|
||||
"%s: Bigphysarea frame %d mem 0x%x (bus: 0x%x)\n",
|
||||
ZR_DEVNAME(zr), i, (unsigned) mem,
|
||||
(unsigned) virt_to_bus(mem));
|
||||
|
||||
/* Zero out the allocated memory */
|
||||
memset(fh->v4l_buffers.buffer[i].fbuffer, 0,
|
||||
fh->v4l_buffers.buffer_size);
|
||||
#elif defined(BUZ_USE_HIMEM)
|
||||
|
||||
/* Use high memory which has been left at boot time */
|
||||
|
||||
|
@ -441,20 +397,6 @@ v4l_fbuffer_alloc (struct file *file)
|
|||
fh->v4l_buffers.buffer[i].fbuffer_bus =
|
||||
pmem + i * fh->v4l_buffers.buffer_size;
|
||||
}
|
||||
#else
|
||||
/* No bigphysarea present, usage of high memory disabled,
|
||||
* but user wants buffers of more than MAX_KMALLOC_MEM */
|
||||
dprintk(1,
|
||||
KERN_ERR
|
||||
"%s: v4l_fbuffer_alloc() - no bigphysarea_patch present, usage of high memory disabled,\n",
|
||||
ZR_DEVNAME(zr));
|
||||
dprintk(1,
|
||||
KERN_ERR
|
||||
"%s: v4l_fbuffer_alloc() - sorry, could not allocate %d V4L buffers of size %d KB.\n",
|
||||
ZR_DEVNAME(zr), fh->v4l_buffers.num_buffers,
|
||||
fh->v4l_buffers.buffer_size >> 10);
|
||||
return -ENOBUFS;
|
||||
#endif
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -485,11 +427,6 @@ v4l_fbuffer_free (struct file *file)
|
|||
ClearPageReserved(MAP_NR(mem + off));
|
||||
kfree((void *) fh->v4l_buffers.buffer[i].fbuffer);
|
||||
}
|
||||
#if defined(CONFIG_BIGPHYS_AREA)
|
||||
else
|
||||
bigphysarea_free_pages((void *) fh->v4l_buffers.
|
||||
buffer[i].fbuffer);
|
||||
#endif
|
||||
fh->v4l_buffers.buffer[i].fbuffer = NULL;
|
||||
}
|
||||
|
||||
|
|
Загрузка…
Ссылка в новой задаче