Merge branch 'x86/prototypes' into x86-v28-for-linus-phase1
[linux-2.6] / drivers / media / dvb / dvb-usb / ttusb2.h
1 /* DVB USB compliant linux driver for Technotrend DVB USB boxes and clones
2  * (e.g. Pinnacle 400e DVB-S USB2.0).
3  *
4  * Copyright (c) 2002 Holger Waechtler <holger@convergence.de>
5  * Copyright (c) 2003 Felix Domke <tmbinc@elitedvb.net>
6  * Copyright (C) 2005-6 Patrick Boettcher <pb@linuxtv.de>
7  *
8  *      This program is free software; you can redistribute it and/or modify it
9  *      under the terms of the GNU General Public License as published by the Free
10  *      Software Foundation, version 2.
11  *
12  * see Documentation/dvb/README.dvb-usb for more information
13  */
14 #ifndef _DVB_USB_TTUSB2_H_
15 #define _DVB_USB_TTUSB2_H_
16
17 /* TTUSB protocol
18  *
19  * always to messages (out/in)
20  * out message:
21  * 0xaa <id> <cmdbyte> <datalen> <data...>
22  *
23  * in message (complete block is always 0x40 bytes long)
24  * 0x55 <id> <cmdbyte> <datalen> <data...>
25  *
26  * id is incremented for each transaction
27  */
28
29 #define CMD_DSP_DOWNLOAD    0x13
30 /* out data: <byte>[28]
31  * last block must be empty */
32
33 #define CMD_DSP_BOOT        0x14
34 /* out data: nothing */
35
36 #define CMD_POWER           0x15
37 /* out data: <on=1/off=0> */
38
39 #define CMD_LNB             0x16
40 /* out data: <power=1> <18V=0,13V=1> <tone> <??=1> <??=1> */
41
42 #define CMD_GET_VERSION     0x17
43 /* in  data: <version_byte>[5] */
44
45 #define CMD_DISEQC          0x18
46 /* out data: <master=0xff/burst=??> <cmdlen> <cmdbytes>[cmdlen] */
47
48 #define CMD_PID_ENABLE      0x22
49 /* out data: <index> <type: ts=1/sec=2> <pid msb> <pid lsb> */
50
51 #define CMD_PID_DISABLE     0x23
52 /* out data: <index> */
53
54 #define CMD_FILTER_ENABLE   0x24
55 /* out data: <index> <pid_idx> <filter>[12] <mask>[12] */
56
57 #define CMD_FILTER_DISABLE  0x25
58 /* out data: <index> */
59
60 #define CMD_GET_DSP_VERSION 0x26
61 /* in  data: <version_byte>[28] */
62
63 #define CMD_I2C_XFER        0x31
64 /* out data: <addr << 1> <sndlen> <rcvlen> <data>[sndlen]
65  * in  data: <addr << 1> <sndlen> <rcvlen> <data>[rcvlen] */
66
67 #define CMD_I2C_BITRATE     0x32
68 /* out data: <default=0> */
69
70 #endif