Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/media/dvb-frontends/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 14 kB image not shown  

Quelle  mxl692_defs.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */
/*
 * Driver for the MaxLinear MxL69x family of combo tuners/demods
 *
 * Copyright (C) 2020 Brad Love <brad@nextdimension.cc>
 *
 * based on code:
 * Copyright (c) 2016 MaxLinear, Inc. All rights reserved
 * which was released under GPL V2
 */


/*****************************************************************************
 * Defines
 *****************************************************************************
 */

#define MXL_EAGLE_HOST_MSG_HEADER_SIZE  8
#define MXL_EAGLE_FW_MAX_SIZE_IN_KB     76
#define MXL_EAGLE_QAM_FFE_TAPS_LENGTH   16
#define MXL_EAGLE_QAM_SPUR_TAPS_LENGTH  32
#define MXL_EAGLE_QAM_DFE_TAPS_LENGTH   72
#define MXL_EAGLE_ATSC_FFE_TAPS_LENGTH  4096
#define MXL_EAGLE_ATSC_DFE_TAPS_LENGTH  384
#define MXL_EAGLE_VERSION_SIZE          5     /* A.B.C.D-RCx */
#define MXL_EAGLE_FW_LOAD_TIME          50

#define MXL_EAGLE_FW_MAX_SIZE_IN_KB       76
#define MXL_EAGLE_FW_HEADER_SIZE          16
#define MXL_EAGLE_FW_SEGMENT_HEADER_SIZE  8
#define MXL_EAGLE_MAX_I2C_PACKET_SIZE     58
#define MXL_EAGLE_I2C_MHEADER_SIZE        6
#define MXL_EAGLE_I2C_PHEADER_SIZE        2

/* Enum of Eagle family devices */
enum MXL_EAGLE_DEVICE_E {
 MXL_EAGLE_DEVICE_691 = 1,    /* Device Mxl691 */
 MXL_EAGLE_DEVICE_248 = 2,    /* Device Mxl248 */
 MXL_EAGLE_DEVICE_692 = 3,    /* Device Mxl692 */
 MXL_EAGLE_DEVICE_MAX,        /* No such device */
};

#define VER_A   1
#define VER_B   1
#define VER_C   1
#define VER_D   3
#define VER_E   6

/* Enum of Host to Eagle I2C protocol opcodes */
enum MXL_EAGLE_OPCODE_E {
 /* DEVICE */
 MXL_EAGLE_OPCODE_DEVICE_DEMODULATOR_TYPE_SET,
 MXL_EAGLE_OPCODE_DEVICE_MPEG_OUT_PARAMS_SET,
 MXL_EAGLE_OPCODE_DEVICE_POWERMODE_SET,
 MXL_EAGLE_OPCODE_DEVICE_GPIO_DIRECTION_SET,
 MXL_EAGLE_OPCODE_DEVICE_GPO_LEVEL_SET,
 MXL_EAGLE_OPCODE_DEVICE_INTR_MASK_SET,
 MXL_EAGLE_OPCODE_DEVICE_IO_MUX_SET,
 MXL_EAGLE_OPCODE_DEVICE_VERSION_GET,
 MXL_EAGLE_OPCODE_DEVICE_STATUS_GET,
 MXL_EAGLE_OPCODE_DEVICE_GPI_LEVEL_GET,

 /* TUNER */
 MXL_EAGLE_OPCODE_TUNER_CHANNEL_TUNE_SET,
 MXL_EAGLE_OPCODE_TUNER_LOCK_STATUS_GET,
 MXL_EAGLE_OPCODE_TUNER_AGC_STATUS_GET,

 /* ATSC */
 MXL_EAGLE_OPCODE_ATSC_INIT_SET,
 MXL_EAGLE_OPCODE_ATSC_ACQUIRE_CARRIER_SET,
 MXL_EAGLE_OPCODE_ATSC_STATUS_GET,
 MXL_EAGLE_OPCODE_ATSC_ERROR_COUNTERS_GET,
 MXL_EAGLE_OPCODE_ATSC_EQUALIZER_FILTER_DFE_TAPS_GET,
 MXL_EAGLE_OPCODE_ATSC_EQUALIZER_FILTER_FFE_TAPS_GET,

 /* QAM */
 MXL_EAGLE_OPCODE_QAM_PARAMS_SET,
 MXL_EAGLE_OPCODE_QAM_RESTART_SET,
 MXL_EAGLE_OPCODE_QAM_STATUS_GET,
 MXL_EAGLE_OPCODE_QAM_ERROR_COUNTERS_GET,
 MXL_EAGLE_OPCODE_QAM_CONSTELLATION_VALUE_GET,
 MXL_EAGLE_OPCODE_QAM_EQUALIZER_FILTER_FFE_GET,
 MXL_EAGLE_OPCODE_QAM_EQUALIZER_FILTER_SPUR_START_GET,
 MXL_EAGLE_OPCODE_QAM_EQUALIZER_FILTER_SPUR_END_GET,
 MXL_EAGLE_OPCODE_QAM_EQUALIZER_FILTER_DFE_TAPS_NUMBER_GET,
 MXL_EAGLE_OPCODE_QAM_EQUALIZER_FILTER_DFE_START_GET,
 MXL_EAGLE_OPCODE_QAM_EQUALIZER_FILTER_DFE_MIDDLE_GET,
 MXL_EAGLE_OPCODE_QAM_EQUALIZER_FILTER_DFE_END_GET,

 /* OOB */
 MXL_EAGLE_OPCODE_OOB_PARAMS_SET,
 MXL_EAGLE_OPCODE_OOB_RESTART_SET,
 MXL_EAGLE_OPCODE_OOB_ERROR_COUNTERS_GET,
 MXL_EAGLE_OPCODE_OOB_STATUS_GET,

 /* SMA */
 MXL_EAGLE_OPCODE_SMA_INIT_SET,
 MXL_EAGLE_OPCODE_SMA_PARAMS_SET,
 MXL_EAGLE_OPCODE_SMA_TRANSMIT_SET,
 MXL_EAGLE_OPCODE_SMA_RECEIVE_GET,

 /* DEBUG */
 MXL_EAGLE_OPCODE_INTERNAL,

 MXL_EAGLE_OPCODE_MAX = 70,
};

/* Enum of Host to Eagle I2C protocol opcodes */
static const char * const MXL_EAGLE_OPCODE_STRING[] = {
 /* DEVICE */
 "DEVICE_DEMODULATOR_TYPE_SET",
 "DEVICE_MPEG_OUT_PARAMS_SET",
 "DEVICE_POWERMODE_SET",
 "DEVICE_GPIO_DIRECTION_SET",
 "DEVICE_GPO_LEVEL_SET",
 "DEVICE_INTR_MASK_SET",
 "DEVICE_IO_MUX_SET",
 "DEVICE_VERSION_GET",
 "DEVICE_STATUS_GET",
 "DEVICE_GPI_LEVEL_GET",

 /* TUNER */
 "TUNER_CHANNEL_TUNE_SET",
 "TUNER_LOCK_STATUS_GET",
 "TUNER_AGC_STATUS_GET",

 /* ATSC */
 "ATSC_INIT_SET",
 "ATSC_ACQUIRE_CARRIER_SET",
 "ATSC_STATUS_GET",
 "ATSC_ERROR_COUNTERS_GET",
 "ATSC_EQUALIZER_FILTER_DFE_TAPS_GET",
 "ATSC_EQUALIZER_FILTER_FFE_TAPS_GET",

 /* QAM */
 "QAM_PARAMS_SET",
 "QAM_RESTART_SET",
 "QAM_STATUS_GET",
 "QAM_ERROR_COUNTERS_GET",
 "QAM_CONSTELLATION_VALUE_GET",
 "QAM_EQUALIZER_FILTER_FFE_GET",
 "QAM_EQUALIZER_FILTER_SPUR_START_GET",
 "QAM_EQUALIZER_FILTER_SPUR_END_GET",
 "QAM_EQUALIZER_FILTER_DFE_TAPS_NUMBER_GET",
 "QAM_EQUALIZER_FILTER_DFE_START_GET",
 "QAM_EQUALIZER_FILTER_DFE_MIDDLE_GET",
 "QAM_EQUALIZER_FILTER_DFE_END_GET",

 /* OOB */
 "OOB_PARAMS_SET",
 "OOB_RESTART_SET",
 "OOB_ERROR_COUNTERS_GET",
 "OOB_STATUS_GET",

 /* SMA */
 "SMA_INIT_SET",
 "SMA_PARAMS_SET",
 "SMA_TRANSMIT_SET",
 "SMA_RECEIVE_GET",

 /* DEBUG */
 "INTERNAL",
};

/* Enum of Callabck function types */
enum MXL_EAGLE_CB_TYPE_E {
 MXL_EAGLE_CB_FW_DOWNLOAD = 0,
};

/* Enum of power supply types */
enum MXL_EAGLE_POWER_SUPPLY_SOURCE_E {
 MXL_EAGLE_POWER_SUPPLY_SOURCE_SINGLE,   /* Single supply of 3.3V */
 MXL_EAGLE_POWER_SUPPLY_SOURCE_DUAL,     /* Dual supply, 1.8V & 3.3V */
};

/* Enum of I/O pad drive modes */
enum MXL_EAGLE_IO_MUX_DRIVE_MODE_E {
 MXL_EAGLE_IO_MUX_DRIVE_MODE_1X,
 MXL_EAGLE_IO_MUX_DRIVE_MODE_2X,
 MXL_EAGLE_IO_MUX_DRIVE_MODE_3X,
 MXL_EAGLE_IO_MUX_DRIVE_MODE_4X,
 MXL_EAGLE_IO_MUX_DRIVE_MODE_5X,
 MXL_EAGLE_IO_MUX_DRIVE_MODE_6X,
 MXL_EAGLE_IO_MUX_DRIVE_MODE_7X,
 MXL_EAGLE_IO_MUX_DRIVE_MODE_8X,
};

/* Enum of demodulator types. Used for selection of demodulator
 * type in relevant devices, e.g. ATSC vs. QAM in Mxl691
 */

enum MXL_EAGLE_DEMOD_TYPE_E {
 MXL_EAGLE_DEMOD_TYPE_QAM,    /* Mxl248 or Mxl692 */
 MXL_EAGLE_DEMOD_TYPE_OOB,    /* Mxl248 only */
 MXL_EAGLE_DEMOD_TYPE_ATSC    /* Mxl691 or Mxl692 */
};

/* Enum of power modes. Used for initial
 * activation, or for activating sleep mode
 */

enum MXL_EAGLE_POWER_MODE_E {
 MXL_EAGLE_POWER_MODE_SLEEP,
 MXL_EAGLE_POWER_MODE_ACTIVE
};

/* Enum of GPIOs, used in device GPIO APIs */
enum MXL_EAGLE_GPIO_NUMBER_E {
 MXL_EAGLE_GPIO_NUMBER_0,
 MXL_EAGLE_GPIO_NUMBER_1,
 MXL_EAGLE_GPIO_NUMBER_2,
 MXL_EAGLE_GPIO_NUMBER_3,
 MXL_EAGLE_GPIO_NUMBER_4,
 MXL_EAGLE_GPIO_NUMBER_5,
 MXL_EAGLE_GPIO_NUMBER_6
};

/* Enum of GPIO directions, used in GPIO direction configuration API */
enum MXL_EAGLE_GPIO_DIRECTION_E {
 MXL_EAGLE_GPIO_DIRECTION_INPUT,
 MXL_EAGLE_GPIO_DIRECTION_OUTPUT
};

/* Enum of GPIO level, used in device GPIO APIs */
enum MXL_EAGLE_GPIO_LEVEL_E {
 MXL_EAGLE_GPIO_LEVEL_LOW,
 MXL_EAGLE_GPIO_LEVEL_HIGH,
};

/* Enum of I/O Mux function, used in device I/O mux configuration API */
enum MXL_EAGLE_IOMUX_FUNCTION_E {
 MXL_EAGLE_IOMUX_FUNC_FEC_LOCK,
 MXL_EAGLE_IOMUX_FUNC_MERR,
};

/* Enum of MPEG Data format, used in MPEG and OOB output configuration */
enum MXL_EAGLE_MPEG_DATA_FORMAT_E {
 MXL_EAGLE_DATA_SERIAL_LSB_1ST = 0,
 MXL_EAGLE_DATA_SERIAL_MSB_1ST,

 MXL_EAGLE_DATA_SYNC_WIDTH_BIT = 0,
 MXL_EAGLE_DATA_SYNC_WIDTH_BYTE
};

/* Enum of MPEG Clock format, used in MPEG and OOB output configuration */
enum MXL_EAGLE_MPEG_CLOCK_FORMAT_E {
 MXL_EAGLE_CLOCK_ACTIVE_HIGH = 0,
 MXL_EAGLE_CLOCK_ACTIVE_LOW,

 MXL_EAGLE_CLOCK_POSITIVE  = 0,
 MXL_EAGLE_CLOCK_NEGATIVE,

 MXL_EAGLE_CLOCK_IN_PHASE = 0,
 MXL_EAGLE_CLOCK_INVERTED,
};

/* Enum of MPEG Clock speeds, used in MPEG output configuration */
enum MXL_EAGLE_MPEG_CLOCK_RATE_E {
 MXL_EAGLE_MPEG_CLOCK_54MHZ,
 MXL_EAGLE_MPEG_CLOCK_40_5MHZ,
 MXL_EAGLE_MPEG_CLOCK_27MHZ,
 MXL_EAGLE_MPEG_CLOCK_13_5MHZ,
};

/* Enum of Interrupt mask bit, used in host interrupt configuration */
enum MXL_EAGLE_INTR_MASK_BITS_E {
 MXL_EAGLE_INTR_MASK_DEMOD = 0,
 MXL_EAGLE_INTR_MASK_SMA_RX = 1,
 MXL_EAGLE_INTR_MASK_WDOG = 31
};

/* Enum of QAM Demodulator type, used in QAM configuration */
enum MXL_EAGLE_QAM_DEMOD_ANNEX_TYPE_E {
 MXL_EAGLE_QAM_DEMOD_ANNEX_B,    /* J.83B */
 MXL_EAGLE_QAM_DEMOD_ANNEX_A,    /* DVB-C */
};

/* Enum of QAM Demodulator modulation, used in QAM configuration and status */
enum MXL_EAGLE_QAM_DEMOD_QAM_TYPE_E {
 MXL_EAGLE_QAM_DEMOD_QAM16,
 MXL_EAGLE_QAM_DEMOD_QAM64,
 MXL_EAGLE_QAM_DEMOD_QAM256,
 MXL_EAGLE_QAM_DEMOD_QAM1024,
 MXL_EAGLE_QAM_DEMOD_QAM32,
 MXL_EAGLE_QAM_DEMOD_QAM128,
 MXL_EAGLE_QAM_DEMOD_QPSK,
 MXL_EAGLE_QAM_DEMOD_AUTO,
};

/* Enum of Demodulator IQ setup, used in QAM, OOB configuration and status */
enum MXL_EAGLE_IQ_FLIP_E {
 MXL_EAGLE_DEMOD_IQ_NORMAL,
 MXL_EAGLE_DEMOD_IQ_FLIPPED,
 MXL_EAGLE_DEMOD_IQ_AUTO,
};

/* Enum of OOB Demodulator symbol rates, used in OOB configuration */
enum MXL_EAGLE_OOB_DEMOD_SYMB_RATE_E {
 MXL_EAGLE_OOB_DEMOD_SYMB_RATE_0_772MHZ,  /* ANSI/SCTE 55-2 0.772 MHz */
 MXL_EAGLE_OOB_DEMOD_SYMB_RATE_1_024MHZ,  /* ANSI/SCTE 55-1 1.024 MHz */
 MXL_EAGLE_OOB_DEMOD_SYMB_RATE_1_544MHZ,  /* ANSI/SCTE 55-2 1.544 MHz */
};

/* Enum of tuner channel tuning mode */
enum MXL_EAGLE_TUNER_CHANNEL_TUNE_MODE_E {
 MXL_EAGLE_TUNER_CHANNEL_TUNE_MODE_VIEW,    /* Normal "view" mode */
 MXL_EAGLE_TUNER_CHANNEL_TUNE_MODE_SCAN,    /* Fast "scan" mode */
};

/* Enum of tuner bandwidth */
enum MXL_EAGLE_TUNER_BW_E {
 MXL_EAGLE_TUNER_BW_6MHZ,
 MXL_EAGLE_TUNER_BW_7MHZ,
 MXL_EAGLE_TUNER_BW_8MHZ,
};

/* Enum of tuner bandwidth */
enum MXL_EAGLE_JUNCTION_TEMPERATURE_E {
 MXL_EAGLE_JUNCTION_TEMPERATURE_BELOW_0_CELSIUS          = 0,
 MXL_EAGLE_JUNCTION_TEMPERATURE_BETWEEN_0_TO_14_CELSIUS  = 1,
 MXL_EAGLE_JUNCTION_TEMPERATURE_BETWEEN_14_TO_28_CELSIUS = 3,
 MXL_EAGLE_JUNCTION_TEMPERATURE_BETWEEN_28_TO_42_CELSIUS = 2,
 MXL_EAGLE_JUNCTION_TEMPERATURE_BETWEEN_42_TO_57_CELSIUS = 6,
 MXL_EAGLE_JUNCTION_TEMPERATURE_BETWEEN_57_TO_71_CELSIUS = 7,
 MXL_EAGLE_JUNCTION_TEMPERATURE_BETWEEN_71_TO_85_CELSIUS = 5,
 MXL_EAGLE_JUNCTION_TEMPERATURE_ABOVE_85_CELSIUS         = 4,
};

/* Struct passed in optional callback used during FW download */
struct MXL_EAGLE_FW_DOWNLOAD_CB_PAYLOAD_T {
 u32  total_len;
 u32  downloaded_len;
};

/* Struct used of I2C protocol between host and Eagle, internal use only */
struct __packed MXL_EAGLE_HOST_MSG_HEADER_T {
 u8   opcode;
 u8   seqnum;
 u8   payload_size;
 u8   status;
 u32  checksum;
};

/* Device version information struct */
struct __packed MXL_EAGLE_DEV_VER_T {
 u8   chip_id;
 u8   firmware_ver[MXL_EAGLE_VERSION_SIZE];
 u8   mxlware_ver[MXL_EAGLE_VERSION_SIZE];
};

/* Xtal configuration struct */
struct __packed MXL_EAGLE_DEV_XTAL_T {
 u8   xtal_cap;           /* accepted range is 1..31 pF. Default is 26 */
 u8   clk_out_enable;
 u8   clk_out_div_enable;   /* clock out freq is xtal freq / 6 */
 u8   xtal_sharing_enable; /* if enabled set xtal_cap to 25 pF */
 u8   xtal_calibration_enable;  /* enable for master, disable for slave */
};

/* GPIO direction struct, internally used in GPIO configuration API */
struct __packed MXL_EAGLE_DEV_GPIO_DIRECTION_T {
 u8   gpio_number;
 u8   gpio_direction;
};

/* GPO level struct, internally used in GPIO configuration API */
struct __packed MXL_EAGLE_DEV_GPO_LEVEL_T {
 u8   gpio_number;
 u8   gpo_level;
};

/* Device Status struct */
struct MXL_EAGLE_DEV_STATUS_T {
 u8   temperature;
 u8   demod_type;
 u8   power_mode;
 u8   cpu_utilization_percent;
};

/* Device interrupt configuration struct */
struct __packed MXL_EAGLE_DEV_INTR_CFG_T {
 u32  intr_mask;
 u8   edge_trigger;
 u8   positive_trigger;
 u8   global_enable_interrupt;
};

/* MPEG pad drive parameters, used on MPEG output configuration */
/* See MXL_EAGLE_IO_MUX_DRIVE_MODE_E */
struct MXL_EAGLE_MPEG_PAD_DRIVE_T {
 u8   pad_drv_mpeg_syn;
 u8   pad_drv_mpeg_dat;
 u8   pad_drv_mpeg_val;
 u8   pad_drv_mpeg_clk;
};

/* MPEGOUT parameter struct, used in MPEG output configuration */
struct MXL_EAGLE_MPEGOUT_PARAMS_T {
 u8   mpeg_parallel;
 u8   msb_first;
 u8   mpeg_sync_pulse_width;    /* See MXL_EAGLE_MPEG_DATA_FORMAT_E */
 u8   mpeg_valid_pol;
 u8   mpeg_sync_pol;
 u8   mpeg_clk_pol;
 u8   mpeg3wire_mode_enable;
 u8   mpeg_clk_freq;
 struct MXL_EAGLE_MPEG_PAD_DRIVE_T mpeg_pad_drv;
};

/* QAM Demodulator parameters struct, used in QAM params configuration */
struct __packed MXL_EAGLE_QAM_DEMOD_PARAMS_T {
 u8   annex_type;
 u8   qam_type;
 u8   iq_flip;
 u8   search_range_idx;
 u8   spur_canceller_enable;
 u32  symbol_rate_hz;
 u32  symbol_rate_256qam_hz;
};

/* QAM Demodulator status */
struct MXL_EAGLE_QAM_DEMOD_STATUS_T {
 u8   annex_type;
 u8   qam_type;
 u8   iq_flip;
 u8   interleaver_depth_i;
 u8   interleaver_depth_j;
 u8   qam_locked;
 u8   fec_locked;
 u8   mpeg_locked;
 u16  snr_db_tenths;
 s16  timing_offset;
 s32  carrier_offset_hz;
};

/* QAM Demodulator error counters */
struct MXL_EAGLE_QAM_DEMOD_ERROR_COUNTERS_T {
 u32  corrected_code_words;
 u32  uncorrected_code_words;
 u32  total_code_words_received;
 u32  corrected_bits;
 u32  error_mpeg_frames;
 u32  mpeg_frames_received;
 u32  erasures;
};

/* QAM Demodulator constellation point */
struct MXL_EAGLE_QAM_DEMOD_CONSTELLATION_VAL_T {
 s16  i_value[12];
 s16  q_value[12];
};

/* QAM Demodulator equalizer filter taps */
struct MXL_EAGLE_QAM_DEMOD_EQU_FILTER_T {
 s16  ffe_taps[MXL_EAGLE_QAM_FFE_TAPS_LENGTH];
 s16  spur_taps[MXL_EAGLE_QAM_SPUR_TAPS_LENGTH];
 s16  dfe_taps[MXL_EAGLE_QAM_DFE_TAPS_LENGTH];
 u8   ffe_leading_tap_index;
 u8   dfe_taps_number;
};

/* OOB Demodulator parameters struct, used in OOB params configuration */
struct __packed MXL_EAGLE_OOB_DEMOD_PARAMS_T {
 u8   symbol_rate;
 u8   iq_flip;
 u8   clk_pol;
};

/* OOB Demodulator error counters */
struct MXL_EAGLE_OOB_DEMOD_ERROR_COUNTERS_T {
 u32  corrected_packets;
 u32  uncorrected_packets;
 u32  total_packets_received;
};

/* OOB status */
struct __packed MXL_EAGLE_OOB_DEMOD_STATUS_T {
 u16  snr_db_tenths;
 s16  timing_offset;
 s32  carrier_offsetHz;
 u8   qam_locked;
 u8   fec_locked;
 u8   mpeg_locked;
 u8   retune_required;
 u8   iq_flip;
};

/* ATSC Demodulator status */
struct __packed MXL_EAGLE_ATSC_DEMOD_STATUS_T {
 s16  snr_db_tenths;
 s16  timing_offset;
 s32  carrier_offset_hz;
 u8   frame_lock;
 u8   atsc_lock;
 u8   fec_lock;
};

/* ATSC Demodulator error counters */
struct MXL_EAGLE_ATSC_DEMOD_ERROR_COUNTERS_T {
 u32  error_packets;
 u32  total_packets;
 u32  error_bytes;
};

/* ATSC Demodulator equalizers filter taps */
struct __packed MXL_EAGLE_ATSC_DEMOD_EQU_FILTER_T {
 s16  ffe_taps[MXL_EAGLE_ATSC_FFE_TAPS_LENGTH];
 s8   dfe_taps[MXL_EAGLE_ATSC_DFE_TAPS_LENGTH];
};

/* Tuner AGC Status */
struct __packed MXL_EAGLE_TUNER_AGC_STATUS_T {
 u8   locked;
 u16  raw_agc_gain;    /* AGC gain [dB] = rawAgcGain / 2^6 */
 s16  rx_power_db_hundredths;
};

/* Tuner channel tune parameters */
struct __packed MXL_EAGLE_TUNER_CHANNEL_PARAMS_T {
 u32  freq_hz;
 u8   tune_mode;
 u8   bandwidth;
};

/* Tuner channel lock indications */
struct __packed MXL_EAGLE_TUNER_LOCK_STATUS_T {
 u8   rf_pll_locked;
 u8   ref_pll_locked;
};

/* Smart antenna parameters  used in Smart antenna params configuration */
struct __packed MXL_EAGLE_SMA_PARAMS_T {
 u8   full_duplex_enable;
 u8   rx_disable;
 u8   idle_logic_high;
};

/* Smart antenna message format */
struct __packed MXL_EAGLE_SMA_MESSAGE_T {
 u32  payload_bits;
 u8   total_num_bits;
};


Messung V0.5
C=89 H=93 G=90

¤ Dauer der Verarbeitung: 0.4 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.