Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 66979
b: refs/heads/master
c: 5cbf830
h: refs/heads/master
i:
  66977: 238bc3a
  66975: 63b4d2d
v: v3
  • Loading branch information
Ivo van Doorn authored and David S. Miller committed Oct 10, 2007
1 parent 58d150f commit 7f61c6d
Show file tree
Hide file tree
Showing 4 changed files with 10 additions and 11 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: dd9fa2d21aebbb618318954867c5dfe3751328be
refs/heads/master: 5cbf830e137d1b6057cb6b553a8ebbb7d1b9343f
13 changes: 6 additions & 7 deletions trunk/drivers/net/wireless/rt2x00/rt2x00dev.c
Original file line number Diff line number Diff line change
Expand Up @@ -120,7 +120,7 @@ int rt2x00lib_enable_radio(struct rt2x00_dev *rt2x00dev)
/*
* Enable RX.
*/
rt2x00lib_toggle_rx(rt2x00dev, 1);
rt2x00lib_toggle_rx(rt2x00dev, STATE_RADIO_RX_ON);

/*
* Start the TX queues.
Expand Down Expand Up @@ -151,30 +151,29 @@ void rt2x00lib_disable_radio(struct rt2x00_dev *rt2x00dev)
/*
* Disable RX.
*/
rt2x00lib_toggle_rx(rt2x00dev, 0);
rt2x00lib_toggle_rx(rt2x00dev, STATE_RADIO_RX_OFF);

/*
* Disable radio.
*/
rt2x00dev->ops->lib->set_device_state(rt2x00dev, STATE_RADIO_OFF);
}

void rt2x00lib_toggle_rx(struct rt2x00_dev *rt2x00dev, int enable)
void rt2x00lib_toggle_rx(struct rt2x00_dev *rt2x00dev, enum dev_state state)
{
enum dev_state state = enable ? STATE_RADIO_RX_ON : STATE_RADIO_RX_OFF;

/*
* When we are disabling the RX, we should also stop the link tuner.
*/
if (!enable)
if (state == STATE_RADIO_RX_OFF)
rt2x00lib_stop_link_tuner(rt2x00dev);

rt2x00dev->ops->lib->set_device_state(rt2x00dev, state);

/*
* When we are enabling the RX, we should also start the link tuner.
*/
if (enable && is_interface_present(&rt2x00dev->interface))
if (state == STATE_RADIO_RX_ON &&
is_interface_present(&rt2x00dev->interface))
rt2x00lib_start_link_tuner(rt2x00dev);
}

Expand Down
2 changes: 1 addition & 1 deletion trunk/drivers/net/wireless/rt2x00/rt2x00lib.h
Original file line number Diff line number Diff line change
Expand Up @@ -38,7 +38,7 @@
*/
int rt2x00lib_enable_radio(struct rt2x00_dev *rt2x00dev);
void rt2x00lib_disable_radio(struct rt2x00_dev *rt2x00dev);
void rt2x00lib_toggle_rx(struct rt2x00_dev *rt2x00dev, int enable);
void rt2x00lib_toggle_rx(struct rt2x00_dev *rt2x00dev, enum dev_state state);
void rt2x00lib_reset_link_tuner(struct rt2x00_dev *rt2x00dev);

/*
Expand Down
4 changes: 2 additions & 2 deletions trunk/drivers/net/wireless/rt2x00/rt2x00mac.c
Original file line number Diff line number Diff line change
Expand Up @@ -272,7 +272,7 @@ int rt2x00mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *conf)
if (!conf->radio_enabled)
rt2x00lib_disable_radio(rt2x00dev);
else
rt2x00lib_toggle_rx(rt2x00dev, 0);
rt2x00lib_toggle_rx(rt2x00dev, STATE_RADIO_RX_OFF);
}

rt2x00lib_config(rt2x00dev, conf, 0);
Expand All @@ -281,7 +281,7 @@ int rt2x00mac_config(struct ieee80211_hw *hw, struct ieee80211_conf *conf)
* Reenable RX only if the radio should be on.
*/
if (test_bit(DEVICE_ENABLED_RADIO, &rt2x00dev->flags))
rt2x00lib_toggle_rx(rt2x00dev, 1);
rt2x00lib_toggle_rx(rt2x00dev, STATE_RADIO_RX_ON);
else if (conf->radio_enabled)
return rt2x00lib_enable_radio(rt2x00dev);

Expand Down

0 comments on commit 7f61c6d

Please sign in to comment.