xref: /linux/drivers/media/dvb-frontends/drxd_firm.h (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1*89ee7f4fSThomas Gleixner /* SPDX-License-Identifier: GPL-2.0-only */
2126f1e61SRalph Metzler /*
3126f1e61SRalph Metzler  * drxd_firm.h
4126f1e61SRalph Metzler  *
5126f1e61SRalph Metzler  * Copyright (C) 2006-2007 Micronas
6126f1e61SRalph Metzler  */
7126f1e61SRalph Metzler 
8126f1e61SRalph Metzler #ifndef _DRXD_FIRM_H_
9126f1e61SRalph Metzler #define _DRXD_FIRM_H_
10126f1e61SRalph Metzler 
11bccd2d8aSMauro Carvalho Chehab #include <linux/types.h>
12126f1e61SRalph Metzler #include "drxd_map_firm.h"
13126f1e61SRalph Metzler 
14126f1e61SRalph Metzler #define VERSION_MAJOR 1
15126f1e61SRalph Metzler #define VERSION_MINOR 4
16126f1e61SRalph Metzler #define VERSION_PATCH 23
17126f1e61SRalph Metzler 
18126f1e61SRalph Metzler #define HI_TR_FUNC_ADDR HI_IF_RAM_USR_BEGIN__A
19126f1e61SRalph Metzler 
20126f1e61SRalph Metzler #define DRXD_MAX_RETRIES (1000)
21126f1e61SRalph Metzler #define HI_I2C_DELAY     84
22126f1e61SRalph Metzler #define HI_I2C_BRIDGE_DELAY   750
23126f1e61SRalph Metzler 
24126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_UNKNOWN          0x00C0	/* Unknown configurations */
25126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QPSK             0x016a
26126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM16_ALPHAN     0x0195
27126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM16_ALPHA1     0x0195
28126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM16_ALPHA2     0x011E
29126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM16_ALPHA4     0x01CE
30126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM64_ALPHAN     0x019F
31126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM64_ALPHA1     0x019F
32126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM64_ALPHA2     0x00F8
33126f1e61SRalph Metzler #define EQ_TD_TPS_PWR_QAM64_ALPHA4     0x014D
34126f1e61SRalph Metzler 
35126f1e61SRalph Metzler #define DRXD_DEF_AG_PWD_CONSUMER 0x000E
36126f1e61SRalph Metzler #define DRXD_DEF_AG_PWD_PRO 0x0000
37126f1e61SRalph Metzler #define DRXD_DEF_AG_AGC_SIO 0x0000
38126f1e61SRalph Metzler 
39126f1e61SRalph Metzler #define DRXD_FE_CTRL_MAX 1023
40126f1e61SRalph Metzler 
41126f1e61SRalph Metzler #define DRXD_OSCDEV_DO_SCAN  (16)
42126f1e61SRalph Metzler 
43126f1e61SRalph Metzler #define DRXD_OSCDEV_DONT_SCAN  (0)
44126f1e61SRalph Metzler 
45126f1e61SRalph Metzler #define DRXD_OSCDEV_STEP  (275)
46126f1e61SRalph Metzler 
47126f1e61SRalph Metzler #define DRXD_SCAN_TIMEOUT    (650)
48126f1e61SRalph Metzler 
49126f1e61SRalph Metzler #define DRXD_BANDWIDTH_8MHZ_IN_HZ  (0x8B8249L)
50126f1e61SRalph Metzler #define DRXD_BANDWIDTH_7MHZ_IN_HZ  (0x7A1200L)
51126f1e61SRalph Metzler #define DRXD_BANDWIDTH_6MHZ_IN_HZ  (0x68A1B6L)
52126f1e61SRalph Metzler 
53126f1e61SRalph Metzler #define IRLEN_COARSE_8K       (10)
54126f1e61SRalph Metzler #define IRLEN_FINE_8K         (10)
55126f1e61SRalph Metzler #define IRLEN_COARSE_2K       (7)
56126f1e61SRalph Metzler #define IRLEN_FINE_2K         (9)
57126f1e61SRalph Metzler #define DIFF_INVALID          (511)
58126f1e61SRalph Metzler #define DIFF_TARGET           (4)
59126f1e61SRalph Metzler #define DIFF_MARGIN           (1)
60126f1e61SRalph Metzler 
61bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitAtomicRead[];
62bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_HiI2cPatch_1[];
63bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_HiI2cPatch_3[];
64126f1e61SRalph Metzler 
65bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitSC[];
66126f1e61SRalph Metzler 
67bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_ResetCEFR[];
68bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitFEA2_1[];
69bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitFEA2_2[];
70bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitCPA2[];
71bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitCEA2[];
72bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitEQA2[];
73bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitECA2[];
74bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_ResetECA2[];
75bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_ResetECRAM[];
76126f1e61SRalph Metzler 
77bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_A2_microcode[];
78bccd2d8aSMauro Carvalho Chehab extern u32 DRXD_A2_microcode_length;
79126f1e61SRalph Metzler 
80bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitFEB1_1[];
81bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitFEB1_2[];
82bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitCPB1[];
83bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitCEB1[];
84bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitEQB1[];
85bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitECB1[];
86126f1e61SRalph Metzler 
87bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitDiversityFront[];
88bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_InitDiversityEnd[];
89bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_DisableDiversity[];
90bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_StartDiversityFront[];
91bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_StartDiversityEnd[];
92126f1e61SRalph Metzler 
93bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_DiversityDelay8MHZ[];
94bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_DiversityDelay6MHZ[];
95126f1e61SRalph Metzler 
96bccd2d8aSMauro Carvalho Chehab extern u8 DRXD_B1_microcode[];
97bccd2d8aSMauro Carvalho Chehab extern u32 DRXD_B1_microcode_length;
98126f1e61SRalph Metzler 
99126f1e61SRalph Metzler #endif
100