mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH 2.4.8-pre1 and 2.4.7-ac1] Motion Eye camera driver updates.
@ 2001-07-27 13:20 Stelian Pop
  0 siblings, 0 replies; only message in thread
From: Stelian Pop @ 2001-07-27 13:20 UTC (permalink / raw)
  To: Linux Kernel Mailing List; +Cc: Alan Cox, Linus Torvalds, Hugh Dickins

This patch applies cleanly to either 2.4.8-pre1 or 2.4.7-ac1
and updates the motion eye camera driver to remove an array
from the stack, and slightly optimize the code.

All the credit goes to Hugh Dickins <hugh@veritas.com>.

Alan, Linus, please apply.

Stelian.

diff -uNr --exclude-from=dontdiff linux-2.4.6-ac5.orig/drivers/media/video/meye.c linux-2.4.6-ac5/drivers/media/video/meye.c
--- linux-2.4.6-ac5.orig/drivers/media/video/meye.c	Fri Jul 27 14:27:36 2001
+++ linux-2.4.6-ac5/drivers/media/video/meye.c	Thu Jul 26 11:45:57 2001
@@ -209,28 +209,23 @@
 
 /* return a page table pointing to N pages of locked memory */
 static void *ptable_alloc(int npages, u32 *pt_addr) {
-	int i = 0;
+	int i;
 	void *vmem;
-	u32 ptable[npages+1];
-	signed long size;
+	u32 *ptable;
 	unsigned long adr;
 
-	size = (npages + 1) * PAGE_SIZE;
-	vmem = rvmalloc(size);
+	vmem = rvmalloc((npages + 1) * PAGE_SIZE);
 	if (!vmem)
 		return NULL;
 
-	memset(ptable, 0, sizeof(ptable));
         adr = (unsigned long)vmem;
-	while (size > 0) {
-		ptable[i++] = virt_to_bus(__va(kvirt_to_pa(adr)));
+	ptable = (u32 *)(vmem + npages * PAGE_SIZE);
+	for (i = 0; i < npages; i++) {
+		ptable[i] = (u32) kvirt_to_bus(adr);
 		adr += PAGE_SIZE;
-		size -= PAGE_SIZE;
 	}
 
-	memcpy(vmem + npages * PAGE_SIZE, ptable, PAGE_SIZE);
-	*pt_addr = ptable[npages];
-
+	*pt_addr = (u32) kvirt_to_bus(adr);
 	return vmem;
 }
 
diff -uNr --exclude-from=dontdiff linux-2.4.6-ac5.orig/drivers/media/video/meye.h linux-2.4.6-ac5/drivers/media/video/meye.h
--- linux-2.4.6-ac5.orig/drivers/media/video/meye.h	Fri Jul 27 14:27:36 2001
+++ linux-2.4.6-ac5/drivers/media/video/meye.h	Fri Jul 27 10:12:35 2001
@@ -29,7 +29,7 @@
 #define _MEYE_PRIV_H_
 
 #define MEYE_DRIVER_MAJORVERSION	1
-#define MEYE_DRIVER_MINORVERSION	0
+#define MEYE_DRIVER_MINORVERSION	1
 
 /****************************************************************************/
 /* Motion JPEG chip registers                                               */
-- 
Stelian Pop <stelian.pop@fr.alcove.com>
|---------------- Free Software Engineer -----------------|
| Alcôve - http://www.alcove.com - Tel: +33 1 49 22 68 00 |
|------------- Alcôve, liberating software ---------------|

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2001-07-27 13:20 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2001-07-27 13:20 [PATCH 2.4.8-pre1 and 2.4.7-ac1] Motion Eye camera driver updates Stelian Pop

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®