diff options
Diffstat (limited to 'drivers/net/wireless/iwlwifi/iwl-core.h')
-rw-r--r-- | drivers/net/wireless/iwlwifi/iwl-core.h | 28 |
1 files changed, 19 insertions, 9 deletions
diff --git a/drivers/net/wireless/iwlwifi/iwl-core.h b/drivers/net/wireless/iwlwifi/iwl-core.h index f3544ea559a2..a0ed4156e25d 100644 --- a/drivers/net/wireless/iwlwifi/iwl-core.h +++ b/drivers/net/wireless/iwlwifi/iwl-core.h | |||
@@ -112,6 +112,19 @@ struct iwl_hcmd_utils_ops { | |||
112 | struct iwl_rx_phy_res *rx_resp); | 112 | struct iwl_rx_phy_res *rx_resp); |
113 | }; | 113 | }; |
114 | 114 | ||
115 | struct iwl_apm_ops { | ||
116 | int (*init)(struct iwl_priv *priv); | ||
117 | int (*reset)(struct iwl_priv *priv); | ||
118 | void (*stop)(struct iwl_priv *priv); | ||
119 | void (*config)(struct iwl_priv *priv); | ||
120 | int (*set_pwr_src)(struct iwl_priv *priv, enum iwl_pwr_src src); | ||
121 | }; | ||
122 | |||
123 | struct iwl_temp_ops { | ||
124 | void (*temperature)(struct iwl_priv *priv); | ||
125 | void (*set_ct_kill)(struct iwl_priv *priv); | ||
126 | }; | ||
127 | |||
115 | struct iwl_lib_ops { | 128 | struct iwl_lib_ops { |
116 | /* set hw dependent parameters */ | 129 | /* set hw dependent parameters */ |
117 | int (*set_hw_params)(struct iwl_priv *priv); | 130 | int (*set_hw_params)(struct iwl_priv *priv); |
@@ -149,23 +162,20 @@ struct iwl_lib_ops { | |||
149 | int (*is_valid_rtc_data_addr)(u32 addr); | 162 | int (*is_valid_rtc_data_addr)(u32 addr); |
150 | /* 1st ucode load */ | 163 | /* 1st ucode load */ |
151 | int (*load_ucode)(struct iwl_priv *priv); | 164 | int (*load_ucode)(struct iwl_priv *priv); |
152 | /* power management */ | 165 | /* power management */ |
153 | struct { | 166 | struct iwl_apm_ops apm_ops; |
154 | int (*init)(struct iwl_priv *priv); | 167 | |
155 | int (*reset)(struct iwl_priv *priv); | ||
156 | void (*stop)(struct iwl_priv *priv); | ||
157 | void (*config)(struct iwl_priv *priv); | ||
158 | int (*set_pwr_src)(struct iwl_priv *priv, enum iwl_pwr_src src); | ||
159 | } apm_ops; | ||
160 | /* power */ | 168 | /* power */ |
161 | int (*send_tx_power) (struct iwl_priv *priv); | 169 | int (*send_tx_power) (struct iwl_priv *priv); |
162 | void (*update_chain_flags)(struct iwl_priv *priv); | 170 | void (*update_chain_flags)(struct iwl_priv *priv); |
163 | void (*temperature) (struct iwl_priv *priv); | ||
164 | void (*post_associate) (struct iwl_priv *priv); | 171 | void (*post_associate) (struct iwl_priv *priv); |
165 | void (*config_ap) (struct iwl_priv *priv); | 172 | void (*config_ap) (struct iwl_priv *priv); |
166 | 173 | ||
167 | /* eeprom operations (as defined in iwl-eeprom.h) */ | 174 | /* eeprom operations (as defined in iwl-eeprom.h) */ |
168 | struct iwl_eeprom_ops eeprom_ops; | 175 | struct iwl_eeprom_ops eeprom_ops; |
176 | |||
177 | /* temperature */ | ||
178 | struct iwl_temp_ops temp_ops; | ||
169 | }; | 179 | }; |
170 | 180 | ||
171 | struct iwl_ops { | 181 | struct iwl_ops { |