File:  [DVB] / dvb-kernel / analog-2.4 / tea6415c.h
Revision 1.1: download - view: text, annotated - select for diffs
Wed May 28 07:50:13 2003 UTC (21 years ago) by hunold
Branches: MAIN
CVS tags: twinhan-exp, twinhan, linux_2_4_branch, linux_2_4, experimental-dvb-devfs-fake, OLD_11_HEAD_2004_10_28, LINUXTV-DVB-1_1_1, LINUXTV-DVB-1_1_0, HEAD, FE_REFACTORING
I removed all "analog" drivers from the main CVS repository and moved them
to a separate "analog-2.4" directory. Main reasons:

- the drivers don't have anything to do with dvb 8-)

- the drivers are already in the kernel (besides the "Hexium" driver)
  and don't change that much any more

- the analog drivers rely on the i2c subsystem, which was heavily modified
  between 2.4 and 2.5. When making a new DVB patchset I have to work around
  these differences every time, which is very annoying

#ifndef __INCLUDED_TEA6415C__
#define __INCLUDED_TEA6415C__

/* possible i2c-addresses */
#define	I2C_TEA6415C_1		0x03
#define	I2C_TEA6415C_2		0x43

/* the tea6415c's design is quite brain-dead. although there are
   8 inputs and 6 outputs, these aren't enumerated in any way. because
   I don't want to say "connect input pin 20 to output pin 17", I define
   a "virtual" pin-order. */

/* input pins */
#define TEA6415C_OUTPUT1 18
#define TEA6415C_OUTPUT2 14
#define TEA6415C_OUTPUT3 16
#define TEA6415C_OUTPUT4 17
#define TEA6415C_OUTPUT5 13
#define TEA6415C_OUTPUT6 15

/* output pins */
#define TEA6415C_INPUT1 5
#define TEA6415C_INPUT2 8
#define TEA6415C_INPUT3 3
#define TEA6415C_INPUT4 20
#define TEA6415C_INPUT5 6
#define TEA6415C_INPUT6 10
#define TEA6415C_INPUT7 1
#define TEA6415C_INPUT8 11

struct tea6415c_multiplex
{
	int	in;	/* input-pin */
	int	out;	/* output-pin */
};

#define TEA6415C_SWITCH		_IOW('v',1,struct tea6415c_multiplex)

#endif

LinuxTV legacy CVS <linuxtv.org/cvs>