linux/drivers/media/usb/dvb-usb-v2/af9035.h

/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * Afatech AF9035 DVB USB driver
 *
 * Copyright (C) 2009 Antti Palosaari <[email protected]>
 * Copyright (C) 2012 Antti Palosaari <[email protected]>
 */

#ifndef AF9035_H
#define AF9035_H

#include <linux/platform_device.h>
#include "dvb_usb.h"
#include "af9033.h"
#include "tua9001.h"
#include "fc0011.h"
#include "fc0012.h"
#include "mxl5007t.h"
#include "tda18218.h"
#include "fc2580.h"
#include "it913x.h"
#include "si2168.h"
#include "si2157.h"

struct reg_val {};

struct reg_val_mask {};

struct usb_req {};

struct state {};

struct address_table {};

static const struct address_table it930x_addresses_table[] =;

static const u32 clock_lut_af9035[] =;

static const u32 clock_lut_it9135[] =;

#define AF9035_FIRMWARE_AF9035
#define AF9035_FIRMWARE_IT9135_V1
#define AF9035_FIRMWARE_IT9135_V2
#define AF9035_FIRMWARE_IT9303

/*
 * eeprom is memory mapped as read only. Writing that memory mapped address
 * will not corrupt eeprom.
 *
 * TS mode:
 * 0  TS
 * 1  DCA + PIP
 * 3  PIP
 * 5  DCA + PIP (AF9035 only)
 * n  DCA
 *
 * Values 0, 3 and 5 are seen to this day. 0 for single TS and 3/5 for dual TS.
 */

#define EEPROM_BASE_AF9035
#define EEPROM_BASE_IT9135
#define EEPROM_SHIFT

#define EEPROM_IR_MODE
#define EEPROM_TS_MODE
#define EEPROM_2ND_DEMOD_ADDR
#define EEPROM_IR_TYPE
#define EEPROM_1_IF_L
#define EEPROM_1_IF_H
#define EEPROM_1_TUNER_ID
#define EEPROM_2_IF_L
#define EEPROM_2_IF_H
#define EEPROM_2_TUNER_ID

/* USB commands */
#define CMD_MEM_RD
#define CMD_MEM_WR
#define CMD_I2C_RD
#define CMD_I2C_WR
#define CMD_IR_GET
#define CMD_FW_DL
#define CMD_FW_QUERYINFO
#define CMD_FW_BOOT
#define CMD_FW_DL_BEGIN
#define CMD_FW_DL_END
#define CMD_FW_SCATTER_WR
#define CMD_GENERIC_I2C_RD
#define CMD_GENERIC_I2C_WR

#endif