Linux Kernel  3.7.1
 All Data Structures Namespaces Files Functions Variables Typedefs Enumerations Enumerator Macros Groups Pages
Data Fields
b43_phy_operations Struct Reference

#include <phy_common.h>

Data Fields

int(* allocate )(struct b43_wldev *dev)
 
void(* free )(struct b43_wldev *dev)
 
void(* prepare_structs )(struct b43_wldev *dev)
 
int(* prepare_hardware )(struct b43_wldev *dev)
 
int(* init )(struct b43_wldev *dev)
 
void(* exit )(struct b43_wldev *dev)
 
u16(* phy_read )(struct b43_wldev *dev, u16 reg)
 
void(* phy_write )(struct b43_wldev *dev, u16 reg, u16 value)
 
void(* phy_maskset )(struct b43_wldev *dev, u16 reg, u16 mask, u16 set)
 
u16(* radio_read )(struct b43_wldev *dev, u16 reg)
 
void(* radio_write )(struct b43_wldev *dev, u16 reg, u16 value)
 
bool(* supports_hwpctl )(struct b43_wldev *dev)
 
void(* software_rfkill )(struct b43_wldev *dev, bool blocked)
 
void(* switch_analog )(struct b43_wldev *dev, bool on)
 
int(* switch_channel )(struct b43_wldev *dev, unsigned int new_channel)
 
unsigned int(* get_default_chan )(struct b43_wldev *dev)
 
void(* set_rx_antenna )(struct b43_wldev *dev, int antenna)
 
int(* interf_mitigation )(struct b43_wldev *dev, enum b43_interference_mitigation new_mode)
 
enum b43_txpwr_result(* recalc_txpower )(struct b43_wldev *dev, bool ignore_tssi)
 
void(* adjust_txpower )(struct b43_wldev *dev)
 
void(* pwork_15sec )(struct b43_wldev *dev)
 
void(* pwork_60sec )(struct b43_wldev *dev)
 

Detailed Description

struct b43_phy_operations - Function pointers for PHY ops.

: Allocate and initialise the PHY data structures. Must not be NULL. : Destroy and free the PHY data structures. Must not be NULL.

: Prepare the PHY data structures. The data structures allocated in are initialized here. Must not be NULL. : Prepare the PHY. This is called before b43_chip_init to do some early early PHY hardware init. Can be NULL, if not required. : Initialize the PHY. Must not be NULL. : Shutdown the PHY. Can be NULL, if not required.

: Read from a PHY register. Must not be NULL. : Write to a PHY register. Must not be NULL. : Maskset a PHY register, taking shortcuts. If it is NULL, a generic algorithm is used. : Read from a Radio register. Must not be NULL. : Write to a Radio register. Must not be NULL.

: Returns a boolean whether Hardware Power Control is supported or not. If NULL, hwpctl is assumed to be never supported. : Turn the radio ON or OFF. Possible state values are RFKILL_STATE_SOFT_BLOCKED or RFKILL_STATE_UNBLOCKED Must not be NULL. : Turn the Analog on/off. Must not be NULL. : Switch the radio to another channel. Must not be NULL. : Just returns the default channel number. Must not be NULL. : Set the antenna used for RX. Can be NULL, if not supported. : Switch the Interference Mitigation mode. Can be NULL, if not supported.

: Recalculate the transmission power parameters. This callback has to recalculate the TX power settings, but does not need to write them to the hardware, yet. Returns enum b43_txpwr_result to indicate whether the hardware needs to be adjusted. If B43_TXPWR_NEED_ADJUST is returned, will be called later. If the parameter "ignore_tssi" is true, the TSSI values should be ignored and a recalculation of the power settings should be done even if the TSSI values did not change. This function may sleep, but should not. Must not be NULL. : Write the previously calculated TX power settings (from ) to the hardware. This function may sleep. Can be NULL, if (and ONLY if) always returns B43_TXPWR_RES_DONE.

: Periodic work. Called every 15 seconds. Can be NULL, if not required. : Periodic work. Called every 60 seconds. Can be NULL, if not required.

Definition at line 157 of file phy_common.h.

Field Documentation

void(* adjust_txpower)(struct b43_wldev *dev)

Definition at line 186 of file phy_common.h.

int(* allocate)(struct b43_wldev *dev)

Definition at line 159 of file phy_common.h.

void(* exit)(struct b43_wldev *dev)

Definition at line 164 of file phy_common.h.

void(* free)(struct b43_wldev *dev)

Definition at line 160 of file phy_common.h.

unsigned int(* get_default_chan)(struct b43_wldev *dev)

Definition at line 178 of file phy_common.h.

int(* init)(struct b43_wldev *dev)

Definition at line 163 of file phy_common.h.

int(* interf_mitigation)(struct b43_wldev *dev, enum b43_interference_mitigation new_mode)

Definition at line 180 of file phy_common.h.

void(* phy_maskset)(struct b43_wldev *dev, u16 reg, u16 mask, u16 set)

Definition at line 169 of file phy_common.h.

u16(* phy_read)(struct b43_wldev *dev, u16 reg)

Definition at line 167 of file phy_common.h.

void(* phy_write)(struct b43_wldev *dev, u16 reg, u16 value)

Definition at line 168 of file phy_common.h.

int(* prepare_hardware)(struct b43_wldev *dev)

Definition at line 162 of file phy_common.h.

void(* prepare_structs)(struct b43_wldev *dev)

Definition at line 161 of file phy_common.h.

void(* pwork_15sec)(struct b43_wldev *dev)

Definition at line 189 of file phy_common.h.

void(* pwork_60sec)(struct b43_wldev *dev)

Definition at line 190 of file phy_common.h.

u16(* radio_read)(struct b43_wldev *dev, u16 reg)

Definition at line 170 of file phy_common.h.

void(* radio_write)(struct b43_wldev *dev, u16 reg, u16 value)

Definition at line 171 of file phy_common.h.

enum b43_txpwr_result(* recalc_txpower)(struct b43_wldev *dev, bool ignore_tssi)

Definition at line 184 of file phy_common.h.

void(* set_rx_antenna)(struct b43_wldev *dev, int antenna)

Definition at line 179 of file phy_common.h.

void(* software_rfkill)(struct b43_wldev *dev, bool blocked)

Definition at line 175 of file phy_common.h.

bool(* supports_hwpctl)(struct b43_wldev *dev)

Definition at line 174 of file phy_common.h.

void(* switch_analog)(struct b43_wldev *dev, bool on)

Definition at line 176 of file phy_common.h.

int(* switch_channel)(struct b43_wldev *dev, unsigned int new_channel)

Definition at line 177 of file phy_common.h.


The documentation for this struct was generated from the following file: