drivers/media/dvb-frontends/drx39xyj/drxj.h
Source file repositories/reference/linux-study-clean/drivers/media/dvb-frontends/drx39xyj/drxj.h
File Facts
- System
- Linux kernel
- Corpus path
drivers/media/dvb-frontends/drx39xyj/drxj.h- Extension
.h- Size
- 23291 bytes
- Lines
- 652
- Domain
- Driver Families
- Bucket
- drivers/media
- Inferred role
- Driver Families: implementation source
- Status
- source implementation candidate
Why This File Exists
Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Repeatable hardware-adapter layer. Deep compatibility for every driver is out of scope; this atlas records patterns, probe lifecycles, bus glue, IRQ/DMA usage, and links back to core abstractions.
- Defines or uses C structs; map object ownership, embedded links, reference counts, and lock ownership.
Dependency Surface
drx_driver.hdrx_dap_fasi.h
Detected Declarations
struct drxjscu_cmdstruct drxj_cfg_smart_antstruct drxj_agc_statusstruct drxj_cfg_agcstruct drxj_cfg_pre_sawstruct drxj_cfg_afe_gainstruct drxjrs_errorsstruct drxj_cfg_vsb_miscstruct drxj_cfg_mpeg_output_miscstruct drxj_cfg_hw_cfgstruct drxj_cfg_atv_miscstruct drxj_cfg_oob_miscstruct drxj_cfg_atv_equ_coefstruct drxj_cfg_atv_outputstruct drxj_cfg_atv_agc_statusstruct drxj_dataenum drxj_cfg_typeenum drxj_cfg_smart_ant_ioenum drxj_agc_ctrl_modeenum drxj_mpeg_start_widthenum drxj_mpeg_output_clock_rateenum drxj_xtal_freqenum drxji2c_speedenum drxj_cfg_oob_lo_powerenum drxj_coef_array_indexenum drxjsif_attenuation
Annotated Snippet
struct drxjscu_cmd {
u16 command;
/*< Command number */
u16 parameter_len;
/*< Data length in byte */
u16 result_len;
/*< result length in byte */
u16 *parameter;
/*< General purpose param */
u16 *result;
/*< General purpose param */};
/*============================================================================*/
/*============================================================================*/
/*== CTRL CFG related data structures ========================================*/
/*============================================================================*/
/*============================================================================*/
/* extra intermediate lock state for VSB,QAM,NTSC */
#define DRXJ_DEMOD_LOCK (DRX_LOCK_STATE_1)
/* OOB lock states */
#define DRXJ_OOB_AGC_LOCK (DRX_LOCK_STATE_1) /* analog gain control lock */
#define DRXJ_OOB_SYNC_LOCK (DRX_LOCK_STATE_2) /* digital gain control lock */
/* Intermediate powermodes for DRXJ */
#define DRXJ_POWER_DOWN_MAIN_PATH DRX_POWER_MODE_8
#define DRXJ_POWER_DOWN_CORE DRX_POWER_MODE_9
#define DRXJ_POWER_DOWN_PLL DRX_POWER_MODE_10
/* supstition for GPIO FNC mux */
#define APP_O (0x0000)
/*#define DRX_CTRL_BASE (0x0000)*/
#define DRXJ_CTRL_CFG_BASE (0x1000)
enum drxj_cfg_type {
DRXJ_CFG_AGC_RF = DRXJ_CTRL_CFG_BASE,
DRXJ_CFG_AGC_IF,
DRXJ_CFG_AGC_INTERNAL,
DRXJ_CFG_PRE_SAW,
DRXJ_CFG_AFE_GAIN,
DRXJ_CFG_SYMBOL_CLK_OFFSET,
DRXJ_CFG_ACCUM_CR_RS_CW_ERR,
DRXJ_CFG_FEC_MERS_SEQ_COUNT,
DRXJ_CFG_OOB_MISC,
DRXJ_CFG_SMART_ANT,
DRXJ_CFG_OOB_PRE_SAW,
DRXJ_CFG_VSB_MISC,
DRXJ_CFG_RESET_PACKET_ERR,
/* ATV (FM) */
DRXJ_CFG_ATV_OUTPUT, /* also for FM (SIF control) but not likely */
DRXJ_CFG_ATV_MISC,
DRXJ_CFG_ATV_EQU_COEF,
DRXJ_CFG_ATV_AGC_STATUS, /* also for FM ( IF,RF, audioAGC ) */
DRXJ_CFG_MPEG_OUTPUT_MISC,
DRXJ_CFG_HW_CFG,
DRXJ_CFG_OOB_LO_POW,
DRXJ_CFG_MAX /* dummy, never to be used */};
/*
* /enum drxj_cfg_smart_ant_io * smart antenna i/o.
*/
enum drxj_cfg_smart_ant_io {
DRXJ_SMT_ANT_OUTPUT = 0,
DRXJ_SMT_ANT_INPUT
};
/*
* /struct drxj_cfg_smart_ant * Set smart antenna.
*/
struct drxj_cfg_smart_ant {
enum drxj_cfg_smart_ant_io io;
u16 ctrl_data;
};
/*
* /struct DRXJAGCSTATUS_t
* AGC status information from the DRXJ-IQM-AF.
*/
struct drxj_agc_status {
u16 IFAGC;
u16 RFAGC;
u16 digital_agc;
};
/* DRXJ_CFG_AGC_RF, DRXJ_CFG_AGC_IF */
Annotation
- Immediate include surface: `drx_driver.h`, `drx_dap_fasi.h`.
- Detected declarations: `struct drxjscu_cmd`, `struct drxj_cfg_smart_ant`, `struct drxj_agc_status`, `struct drxj_cfg_agc`, `struct drxj_cfg_pre_saw`, `struct drxj_cfg_afe_gain`, `struct drxjrs_errors`, `struct drxj_cfg_vsb_misc`, `struct drxj_cfg_mpeg_output_misc`, `struct drxj_cfg_hw_cfg`.
- Atlas domain: Driver Families / drivers/media.
- Implementation status: source implementation candidate.
Implementation Notes
- This generated page is the file-by-file coverage layer; curated subsystem chapters should link here when they synthesize a multi-file control flow.
- Core OS pages should be promoted from atlas-only to deep-reviewed when they explain data structures, invariants, locking, lifecycle, and C implementation snippets.
- Driver-family pages are intentionally pattern-oriented unless they are part of the selected PCIe/NVMe representative device path.