Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/net/wireless/broadcom/b43/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 2 kB image not shown  

Quelle  lo.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0 */
#ifndef B43_LO_H_
#define B43_LO_H_

/* G-PHY Local Oscillator */

#include "phy_g.h"

struct b43_wldev;

/* Local Oscillator control value-pair. */
struct b43_loctl {
 /* Control values. */
 s8 i;
 s8 q;
};
/* Debugging: Poison value for i and q values. */
#define B43_LOCTL_POISON 111

/* This struct holds calibrated LO settings for a set of
 * Baseband and RF attenuation settings. */

struct b43_lo_calib {
 /* The set of attenuation values this set of LO
 * control values is calibrated for. */

 struct b43_bbatt bbatt;
 struct b43_rfatt rfatt;
 /* The set of control values for the LO. */
 struct b43_loctl ctl;
 /* The time when these settings were calibrated (in jiffies) */
 unsigned long calib_time;
 /* List. */
 struct list_head list;
};

/* Size of the DC Lookup Table in 16bit words. */
#define B43_DC_LT_SIZE  32

/* Local Oscillator calibration information */
struct b43_txpower_lo_control {
 /* Lists of RF and BB attenuation values for this device.
 * Used for building hardware power control tables. */

 struct b43_rfatt_list rfatt_list;
 struct b43_bbatt_list bbatt_list;

 /* The DC Lookup Table is cached in memory here.
 * Note that this is only used for Hardware Power Control. */

 u16 dc_lt[B43_DC_LT_SIZE];

 /* List of calibrated control values (struct b43_lo_calib). */
 struct list_head calib_list;
 /* Last time the power vector was read (jiffies). */
 unsigned long pwr_vec_read_time;
 /* Last time the txctl values were measured (jiffies). */
 unsigned long txctl_measured_time;

 /* Current TX Bias value */
 u8 tx_bias;
 /* Current TX Magnification Value (if used by the device) */
 u8 tx_magn;

 /* Saved device PowerVector */
 u64 power_vector;
};

/* Calibration expire timeouts.
 * Timeouts must be multiple of 15 seconds. To make sure
 * the item really expired when the 15 second timer hits, we
 * subtract two additional seconds from the timeout. */

#define B43_LO_CALIB_EXPIRE (HZ * (30 - 2))
#define B43_LO_PWRVEC_EXPIRE (HZ * (30 - 2))
#define B43_LO_TXCTL_EXPIRE (HZ * (180 - 4))


/* Adjust the Local Oscillator to the saved attenuation
 * and txctl values.
 */

void b43_lo_g_adjust(struct b43_wldev *dev);
/* Adjust to specific values. */
void b43_lo_g_adjust_to(struct b43_wldev *dev,
   u16 rfatt, u16 bbatt, u16 tx_control);

void b43_gphy_dc_lt_init(struct b43_wldev *dev, bool update_all);

void b43_lo_g_maintenance_work(struct b43_wldev *dev);
void b43_lo_g_cleanup(struct b43_wldev *dev);
void b43_lo_g_init(struct b43_wldev *dev);

#endif /* B43_LO_H_ */

Messung V0.5
C=75 H=100 G=88

¤ Dauer der Verarbeitung: 0.2 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.