mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* [PATCH - 1/2] new i2c video decoder calls
@ 2004-05-04  8:00 Ronald S. Bultje
  0 siblings, 0 replies; only message in thread
From: Ronald S. Bultje @ 2004-05-04  8:00 UTC (permalink / raw)
  To: Andrew Morton; +Cc: linux-kernel, Michael Hunold, Gerd Knorr

[-- Attachment #1: Type: text/plain, Size: 1077 bytes --]

Hi Andrew,

attached patch adds three new calls to the i2c video decoder API. The
changes were requested by Michael (CC'ed) and approved by Gerd Knorr
(v4l maintainer, CC'ed).

Short explanation:
* INIT is a general initialization call with optional initialization
data. Reason for this is that several i2c decoders (or general: clients)
are being used by several adapters (main drivers), and in some cases,
one adapter simply needs different settings than the other, either
because the adapter is completely different or because the card was
reverse engineered in a way that doesn't allow multiple adapters to run
using the same original initialization data. Michael faces such a
problem right now. Both he and me lack time to properly sit together and
work out the exact details or a proper way to merge.

* VBI_BYPASS and GPIO set specific pins on the decoder. This will be
used in the saa7111 driver. My driver (zr36067, original user of the
saa7111 driver) doesn't use any of this, but Michael's does.

Patch should apply against any recent 2.6.x kernel.

Thanks,

Ronald

[-- Attachment #2: linux-i2c-video-decoder.diff --]
[-- Type: text/x-patch, Size: 1185 bytes --]

diff -ura xx-linux-2.6.3/include/linux/video_decoder.h linux-2.6.3/include/linux/video_decoder.h
--- xx-linux-2.6.3/include/linux/video_decoder.h	2003-12-18 03:58:04.000000000 +0100
+++ linux-2.6.3/include/linux/video_decoder.h	2004-02-22 16:20:07.000000000 +0100
@@ -22,6 +22,10 @@
 #define	DECODER_STATUS_NTSC	8	/* auto detected */
 #define	DECODER_STATUS_SECAM	16	/* auto detected */
 
+struct video_decoder_init {
+	unsigned char len;
+	const unsigned char *data;
+};
 
 #define	DECODER_GET_CAPABILITIES _IOR('d', 1, struct video_decoder_capability)
 #define	DECODER_GET_STATUS    	_IOR('d', 2, int)
@@ -30,6 +34,9 @@
 #define	DECODER_SET_OUTPUT	_IOW('d', 5, int)	/* 0 <= output < #outputs */
 #define	DECODER_ENABLE_OUTPUT	_IOW('d', 6, int)	/* boolean output enable control */
 #define	DECODER_SET_PICTURE   	_IOW('d', 7, struct video_picture)
+#define	DECODER_SET_GPIO	_IOW('d', 8, int)	/* switch general purpose pin */
+#define	DECODER_INIT		_IOW('d', 9, struct video_decoder_init)	/* init internal registers at once */
+#define	DECODER_SET_VBI_BYPASS	_IOW('d', 10, int)	/* switch vbi bypass */
 
 #define	DECODER_DUMP		_IO('d', 192)		/* debug hook */
 

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

only message in thread, other threads:[~2004-05-04 13:59 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2004-05-04  8:00 [PATCH - 1/2] new i2c video decoder calls Ronald S. Bultje

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®