18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0-only */
28c2ecf20Sopenharmony_ci/*
38c2ecf20Sopenharmony_ci * drxd_firm.h
48c2ecf20Sopenharmony_ci *
58c2ecf20Sopenharmony_ci * Copyright (C) 2006-2007 Micronas
68c2ecf20Sopenharmony_ci */
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_ci#ifndef _DRXD_FIRM_H_
98c2ecf20Sopenharmony_ci#define _DRXD_FIRM_H_
108c2ecf20Sopenharmony_ci
118c2ecf20Sopenharmony_ci#include <linux/types.h>
128c2ecf20Sopenharmony_ci#include "drxd_map_firm.h"
138c2ecf20Sopenharmony_ci
148c2ecf20Sopenharmony_ci#define VERSION_MAJOR 1
158c2ecf20Sopenharmony_ci#define VERSION_MINOR 4
168c2ecf20Sopenharmony_ci#define VERSION_PATCH 23
178c2ecf20Sopenharmony_ci
188c2ecf20Sopenharmony_ci#define HI_TR_FUNC_ADDR HI_IF_RAM_USR_BEGIN__A
198c2ecf20Sopenharmony_ci
208c2ecf20Sopenharmony_ci#define DRXD_MAX_RETRIES (1000)
218c2ecf20Sopenharmony_ci#define HI_I2C_DELAY     84
228c2ecf20Sopenharmony_ci#define HI_I2C_BRIDGE_DELAY   750
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_UNKNOWN          0x00C0	/* Unknown configurations */
258c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QPSK             0x016a
268c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM16_ALPHAN     0x0195
278c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM16_ALPHA1     0x0195
288c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM16_ALPHA2     0x011E
298c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM16_ALPHA4     0x01CE
308c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM64_ALPHAN     0x019F
318c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM64_ALPHA1     0x019F
328c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM64_ALPHA2     0x00F8
338c2ecf20Sopenharmony_ci#define EQ_TD_TPS_PWR_QAM64_ALPHA4     0x014D
348c2ecf20Sopenharmony_ci
358c2ecf20Sopenharmony_ci#define DRXD_DEF_AG_PWD_CONSUMER 0x000E
368c2ecf20Sopenharmony_ci#define DRXD_DEF_AG_PWD_PRO 0x0000
378c2ecf20Sopenharmony_ci#define DRXD_DEF_AG_AGC_SIO 0x0000
388c2ecf20Sopenharmony_ci
398c2ecf20Sopenharmony_ci#define DRXD_FE_CTRL_MAX 1023
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_ci#define DRXD_OSCDEV_DO_SCAN  (16)
428c2ecf20Sopenharmony_ci
438c2ecf20Sopenharmony_ci#define DRXD_OSCDEV_DONT_SCAN  (0)
448c2ecf20Sopenharmony_ci
458c2ecf20Sopenharmony_ci#define DRXD_OSCDEV_STEP  (275)
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ci#define DRXD_SCAN_TIMEOUT    (650)
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ci#define DRXD_BANDWIDTH_8MHZ_IN_HZ  (0x8B8249L)
508c2ecf20Sopenharmony_ci#define DRXD_BANDWIDTH_7MHZ_IN_HZ  (0x7A1200L)
518c2ecf20Sopenharmony_ci#define DRXD_BANDWIDTH_6MHZ_IN_HZ  (0x68A1B6L)
528c2ecf20Sopenharmony_ci
538c2ecf20Sopenharmony_ci#define IRLEN_COARSE_8K       (10)
548c2ecf20Sopenharmony_ci#define IRLEN_FINE_8K         (10)
558c2ecf20Sopenharmony_ci#define IRLEN_COARSE_2K       (7)
568c2ecf20Sopenharmony_ci#define IRLEN_FINE_2K         (9)
578c2ecf20Sopenharmony_ci#define DIFF_INVALID          (511)
588c2ecf20Sopenharmony_ci#define DIFF_TARGET           (4)
598c2ecf20Sopenharmony_ci#define DIFF_MARGIN           (1)
608c2ecf20Sopenharmony_ci
618c2ecf20Sopenharmony_ciextern u8 DRXD_InitAtomicRead[];
628c2ecf20Sopenharmony_ciextern u8 DRXD_HiI2cPatch_1[];
638c2ecf20Sopenharmony_ciextern u8 DRXD_HiI2cPatch_3[];
648c2ecf20Sopenharmony_ci
658c2ecf20Sopenharmony_ciextern u8 DRXD_InitSC[];
668c2ecf20Sopenharmony_ci
678c2ecf20Sopenharmony_ciextern u8 DRXD_ResetCEFR[];
688c2ecf20Sopenharmony_ciextern u8 DRXD_InitFEA2_1[];
698c2ecf20Sopenharmony_ciextern u8 DRXD_InitFEA2_2[];
708c2ecf20Sopenharmony_ciextern u8 DRXD_InitCPA2[];
718c2ecf20Sopenharmony_ciextern u8 DRXD_InitCEA2[];
728c2ecf20Sopenharmony_ciextern u8 DRXD_InitEQA2[];
738c2ecf20Sopenharmony_ciextern u8 DRXD_InitECA2[];
748c2ecf20Sopenharmony_ciextern u8 DRXD_ResetECA2[];
758c2ecf20Sopenharmony_ciextern u8 DRXD_ResetECRAM[];
768c2ecf20Sopenharmony_ci
778c2ecf20Sopenharmony_ciextern u8 DRXD_A2_microcode[];
788c2ecf20Sopenharmony_ciextern u32 DRXD_A2_microcode_length;
798c2ecf20Sopenharmony_ci
808c2ecf20Sopenharmony_ciextern u8 DRXD_InitFEB1_1[];
818c2ecf20Sopenharmony_ciextern u8 DRXD_InitFEB1_2[];
828c2ecf20Sopenharmony_ciextern u8 DRXD_InitCPB1[];
838c2ecf20Sopenharmony_ciextern u8 DRXD_InitCEB1[];
848c2ecf20Sopenharmony_ciextern u8 DRXD_InitEQB1[];
858c2ecf20Sopenharmony_ciextern u8 DRXD_InitECB1[];
868c2ecf20Sopenharmony_ci
878c2ecf20Sopenharmony_ciextern u8 DRXD_InitDiversityFront[];
888c2ecf20Sopenharmony_ciextern u8 DRXD_InitDiversityEnd[];
898c2ecf20Sopenharmony_ciextern u8 DRXD_DisableDiversity[];
908c2ecf20Sopenharmony_ciextern u8 DRXD_StartDiversityFront[];
918c2ecf20Sopenharmony_ciextern u8 DRXD_StartDiversityEnd[];
928c2ecf20Sopenharmony_ci
938c2ecf20Sopenharmony_ciextern u8 DRXD_DiversityDelay8MHZ[];
948c2ecf20Sopenharmony_ciextern u8 DRXD_DiversityDelay6MHZ[];
958c2ecf20Sopenharmony_ci
968c2ecf20Sopenharmony_ciextern u8 DRXD_B1_microcode[];
978c2ecf20Sopenharmony_ciextern u32 DRXD_B1_microcode_length;
988c2ecf20Sopenharmony_ci
998c2ecf20Sopenharmony_ci#endif
100