New port linux-ov511-kmod, a usb webcam driver based on the linux

driver 'ov511' (from the linux sources) built on FreeBSD using
devel/linux-kmod-compat. The driver supports some ov511 based
webcams.

THIS IS EXPERIMENTAL CODE, TRY IT AT YOUR OWN RISK.

This is only for 6.x/7.x and at the moment only for i386.

Most bugs and limitations are due to linux-kmod-compat rather than
this port itself, so upgrading linux-kmod-compat (and rebuilding
this port) will most likely improve functionality and remove some bugs.

As usual if some of the port gurus wants to help fixing any mistakes
that i may have made in the port (or missing things, e.g. a suitable
warning message when the port is installed), i will be very grateful
(and can spend more time working on the emulation code).

In particular, i could not find a good site (ftp or web) to fetch
individual linux source files from, so i copied them on my web server
and used it as MASTER_SITE. This should be fixed though.
This commit is contained in:
Luigi Rizzo 2007-02-02 18:25:27 +00:00
parent cc47cd95b1
commit 70c88d3609
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=183971
6 changed files with 68 additions and 0 deletions

View file

@ -0,0 +1,37 @@
# New ports collection makefile for: linux-ov511-kmod
# Date created: 2 February 2007
# Whom: luigi
#
# $FreeBSD$
#
# XXX MASTER_SITES should be replaced with some good locations
# for individual files from linux distributions.
PORTNAME= linux-ov511-kmod
PORTVERSION= 1.0
CATEGORIES= multimedia
MASTER_SITES= http://info.iet.unipi.it/~luigi/FreeBSD/linux/drivers/media/video/
DISTFILES= ov511.c ov511.h
DIST_SUBDIR= ${PORTNAME}
MAINTAINER= luigi@FreeBSD.org
COMMENT= A port of the linux ov511 webcam driver
# Requires the linux emulation layer to be built
BUILD_DEPENDS= /usr/share/mk/bsd.linux_kmod.mk:${PORTSDIR}/devel/linux-kmod-compat
NO_PACKAGE= depends on kernel sources
# This is our Makefile to be used for build/install.
MAKEFILE= Makefile.kld
ALL_TARGET= depend all
# we simply copy the sources from the original site
do-extract:
@${MKDIR} ${WRKSRC}
( cd ${_DISTDIR} && ${CP} ${DISTFILES} ${WRKSRC} )
post-extract:
@${CP} ${FILESDIR}/${MAKEFILE} ${WRKSRC}
.include <bsd.port.mk>

View file

@ -0,0 +1,6 @@
MD5 (linux-ov511-kmod/ov511.c) = 250f3d31665d95186493fafc5d718b76
SHA256 (linux-ov511-kmod/ov511.c) = c6c079fe8934ef8b8e437709f5f9cb07c2e154c2d5f76daaccd037077fcc8f7f
SIZE (linux-ov511-kmod/ov511.c) = 144700
MD5 (linux-ov511-kmod/ov511.h) = ef3ed91f3cc0fbc08f2e2ed9669af0d9
SHA256 (linux-ov511-kmod/ov511.h) = d0b2c61cbf0e04a453ab1521123d22a6694411f50be0ee6eb26b579554f6d958
SIZE (linux-ov511-kmod/ov511.h) = 16379

View file

@ -0,0 +1,7 @@
# Makefile.kld to build a driver with linux emulation.
# See /usr/share/mk/bsd.linux_kmod.mk for more details.
SRCS= ov511.c # sources for the linux driver
KMOD= ov511 # module name
.include <bsd.linux_kmod.mk>

View file

@ -0,0 +1,12 @@
diff -ubwr drivers/media/video/ov511.h ./ov511.h
--- drivers/media/video/ov511.h Wed Jan 10 20:10:37 2007
+++ ./ov511.h Wed Jan 31 10:36:17 2007
@@ -250,7 +250,7 @@
#error "OV511_NUMFRAMES is too high"
#endif
-#define OV511_NUMSBUF 2
+#define OV511_NUMSBUF 3
/* Control transfers use up to 4 bytes */
#define OV511_CBUF_SIZE 4

View file

@ -0,0 +1,3 @@
This port builds a kernel module with the 'ov511' USB webcam driver
using the adaptation layer in devel/linux-kmod-compat
The sources are taken from the Linux kernel 2.6.x

View file

@ -0,0 +1,3 @@
@comment The module is installed in /boot/modules
@cwd /boot/modules
ov511.ko