iwlwifi: comment context requirements of the op_mode
A few op_mode of the op_mode API functions have requirements on the running context of the caller. Document that. Signed-off-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com> Signed-off-by: Johannes Berg <johannes.berg@intel.com>
This commit is contained in:
committed by
Johannes Berg
parent
e9d364de1a
commit
901787c167
@@ -111,22 +111,25 @@ struct iwl_cfg;
|
|||||||
* May sleep
|
* May sleep
|
||||||
* @rx: Rx notification to the op_mode. rxb is the Rx buffer itself. Cmd is the
|
* @rx: Rx notification to the op_mode. rxb is the Rx buffer itself. Cmd is the
|
||||||
* HCMD the this Rx responds to.
|
* HCMD the this Rx responds to.
|
||||||
* Must be atomic.
|
* Must be atomic and called with BH disabled.
|
||||||
* @queue_full: notifies that a HW queue is full.
|
* @queue_full: notifies that a HW queue is full.
|
||||||
* Must be atomic
|
* Must be atomic and called with BH disabled.
|
||||||
* @queue_not_full: notifies that a HW queue is not full any more.
|
* @queue_not_full: notifies that a HW queue is not full any more.
|
||||||
* Must be atomic
|
* Must be atomic and called with BH disabled.
|
||||||
* @hw_rf_kill:notifies of a change in the HW rf kill switch. True means that
|
* @hw_rf_kill:notifies of a change in the HW rf kill switch. True means that
|
||||||
* the radio is killed. Must be atomic.
|
* the radio is killed. Must be atomic.
|
||||||
* @free_skb: allows the transport layer to free skbs that haven't been
|
* @free_skb: allows the transport layer to free skbs that haven't been
|
||||||
* reclaimed by the op_mode. This can happen when the driver is freed and
|
* reclaimed by the op_mode. This can happen when the driver is freed and
|
||||||
* there are Tx packets pending in the transport layer.
|
* there are Tx packets pending in the transport layer.
|
||||||
* Must be atomic
|
* Must be atomic
|
||||||
* @nic_error: error notification. Must be atomic
|
* @nic_error: error notification. Must be atomic and must be called with BH
|
||||||
* @cmd_queue_full: Called when the command queue gets full. Must be atomic.
|
* disabled.
|
||||||
|
* @cmd_queue_full: Called when the command queue gets full. Must be atomic and
|
||||||
|
* called with BH disabled.
|
||||||
* @nic_config: configure NIC, called before firmware is started.
|
* @nic_config: configure NIC, called before firmware is started.
|
||||||
* May sleep
|
* May sleep
|
||||||
* @wimax_active: invoked when WiMax becomes active. Must be atomic.
|
* @wimax_active: invoked when WiMax becomes active. Must be atomic and called
|
||||||
|
* with BH disabled.
|
||||||
*/
|
*/
|
||||||
struct iwl_op_mode_ops {
|
struct iwl_op_mode_ops {
|
||||||
struct iwl_op_mode *(*start)(struct iwl_trans *trans,
|
struct iwl_op_mode *(*start)(struct iwl_trans *trans,
|
||||||
@@ -165,7 +168,6 @@ struct iwl_op_mode {
|
|||||||
static inline void iwl_op_mode_stop(struct iwl_op_mode *op_mode)
|
static inline void iwl_op_mode_stop(struct iwl_op_mode *op_mode)
|
||||||
{
|
{
|
||||||
might_sleep();
|
might_sleep();
|
||||||
|
|
||||||
op_mode->ops->stop(op_mode);
|
op_mode->ops->stop(op_mode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user