1a10e763bSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */ 2786baecfSMauro Carvalho Chehab /* DVB USB compliant linux driver for Technotrend DVB USB boxes and clones 3786baecfSMauro Carvalho Chehab * (e.g. Pinnacle 400e DVB-S USB2.0). 4786baecfSMauro Carvalho Chehab * 5786baecfSMauro Carvalho Chehab * Copyright (c) 2002 Holger Waechtler <holger@convergence.de> 6786baecfSMauro Carvalho Chehab * Copyright (c) 2003 Felix Domke <tmbinc@elitedvb.net> 7786baecfSMauro Carvalho Chehab * Copyright (C) 2005-6 Patrick Boettcher <pb@linuxtv.de> 8786baecfSMauro Carvalho Chehab * 9577a7ad3SMauro Carvalho Chehab * see Documentation/driver-api/media/drivers/dvb-usb.rst for more information 10786baecfSMauro Carvalho Chehab */ 11786baecfSMauro Carvalho Chehab #ifndef _DVB_USB_TTUSB2_H_ 12786baecfSMauro Carvalho Chehab #define _DVB_USB_TTUSB2_H_ 13786baecfSMauro Carvalho Chehab 14786baecfSMauro Carvalho Chehab /* TTUSB protocol 15786baecfSMauro Carvalho Chehab * 16786baecfSMauro Carvalho Chehab * always to messages (out/in) 17786baecfSMauro Carvalho Chehab * out message: 18786baecfSMauro Carvalho Chehab * 0xaa <id> <cmdbyte> <datalen> <data...> 19786baecfSMauro Carvalho Chehab * 20786baecfSMauro Carvalho Chehab * in message (complete block is always 0x40 bytes long) 21786baecfSMauro Carvalho Chehab * 0x55 <id> <cmdbyte> <datalen> <data...> 22786baecfSMauro Carvalho Chehab * 23786baecfSMauro Carvalho Chehab * id is incremented for each transaction 24786baecfSMauro Carvalho Chehab */ 25786baecfSMauro Carvalho Chehab 26786baecfSMauro Carvalho Chehab #define CMD_DSP_DOWNLOAD 0x13 27786baecfSMauro Carvalho Chehab /* out data: <byte>[28] 28786baecfSMauro Carvalho Chehab * last block must be empty */ 29786baecfSMauro Carvalho Chehab 30786baecfSMauro Carvalho Chehab #define CMD_DSP_BOOT 0x14 31786baecfSMauro Carvalho Chehab /* out data: nothing */ 32786baecfSMauro Carvalho Chehab 33786baecfSMauro Carvalho Chehab #define CMD_POWER 0x15 34786baecfSMauro Carvalho Chehab /* out data: <on=1/off=0> */ 35786baecfSMauro Carvalho Chehab 36786baecfSMauro Carvalho Chehab #define CMD_LNB 0x16 37786baecfSMauro Carvalho Chehab /* out data: <power=1> <18V=0,13V=1> <tone> <??=1> <??=1> */ 38786baecfSMauro Carvalho Chehab 39786baecfSMauro Carvalho Chehab #define CMD_GET_VERSION 0x17 40786baecfSMauro Carvalho Chehab /* in data: <version_byte>[5] */ 41786baecfSMauro Carvalho Chehab 42786baecfSMauro Carvalho Chehab #define CMD_DISEQC 0x18 43786baecfSMauro Carvalho Chehab /* out data: <master=0xff/burst=??> <cmdlen> <cmdbytes>[cmdlen] */ 44786baecfSMauro Carvalho Chehab 45786baecfSMauro Carvalho Chehab #define CMD_PID_ENABLE 0x22 46786baecfSMauro Carvalho Chehab /* out data: <index> <type: ts=1/sec=2> <pid msb> <pid lsb> */ 47786baecfSMauro Carvalho Chehab 48786baecfSMauro Carvalho Chehab #define CMD_PID_DISABLE 0x23 49786baecfSMauro Carvalho Chehab /* out data: <index> */ 50786baecfSMauro Carvalho Chehab 51786baecfSMauro Carvalho Chehab #define CMD_FILTER_ENABLE 0x24 52786baecfSMauro Carvalho Chehab /* out data: <index> <pid_idx> <filter>[12] <mask>[12] */ 53786baecfSMauro Carvalho Chehab 54786baecfSMauro Carvalho Chehab #define CMD_FILTER_DISABLE 0x25 55786baecfSMauro Carvalho Chehab /* out data: <index> */ 56786baecfSMauro Carvalho Chehab 57786baecfSMauro Carvalho Chehab #define CMD_GET_DSP_VERSION 0x26 58786baecfSMauro Carvalho Chehab /* in data: <version_byte>[28] */ 59786baecfSMauro Carvalho Chehab 60786baecfSMauro Carvalho Chehab #define CMD_I2C_XFER 0x31 61786baecfSMauro Carvalho Chehab /* out data: <addr << 1> <sndlen> <rcvlen> <data>[sndlen] 62786baecfSMauro Carvalho Chehab * in data: <addr << 1> <sndlen> <rcvlen> <data>[rcvlen] */ 63786baecfSMauro Carvalho Chehab 64786baecfSMauro Carvalho Chehab #define CMD_I2C_BITRATE 0x32 65786baecfSMauro Carvalho Chehab /* out data: <default=0> */ 66786baecfSMauro Carvalho Chehab 67786baecfSMauro Carvalho Chehab #endif 68