p54: enable Mesh Point support
PATCH 1/4 p54: enable Mesh Point support
This patch enables Mesh Point operation for any p54 device.
Signed-off-by Christian Lamparter <[email protected]>
---
drivers/net/wireless/p54/p54common.c +5 -0
@@ -1059,6 +1059,7 @@ static int p54_tx_fill(struct ieee80211_break ;case NL80211_IFTYPE_AP :case NL80211_IFTYPE_ADHOC : +case NL80211_IFTYPE_MESH_POINT :if (info->flags &IEEE80211_TX_CTL_SEND_AFTER_DTIM ) { *aid =0 ; *queue =3 ;
@@ -1571,6 +1572,7 @@ static int p54_add_interface(struct ieeecase NL80211_IFTYPE_STATION :case NL80211_IFTYPE_ADHOC :case NL80211_IFTYPE_AP : +case NL80211_IFTYPE_MESH_POINT : priv->mode = conf->type;break ;default :
@@ -1590,6 +1592,7 @@ static int p54_add_interface(struct ieeep54_setup_mac (dev,P54_FILTER_TYPE_AP , priv->mac_addr);break ;case NL80211_IFTYPE_ADHOC : +case NL80211_IFTYPE_MESH_POINT :p54_setup_mac (dev,P54_FILTER_TYPE_IBSS ,NULL );break ;default :
@@ -1654,6 +1657,7 @@ static int p54_config_interface(struct ibreak ;case NL80211_IFTYPE_AP :case NL80211_IFTYPE_ADHOC : +case NL80211_IFTYPE_MESH_POINT :memcpy (priv->bssid, conf->bssid,ETH_ALEN ); ret =p54_set_freq (dev, dev->conf.channel->center_freq);if (ret)
@@ -1829,6 +1833,7 @@ struct ieee80211_hw *p54_init_common(siz dev->wiphy->interface_modes =BIT (NL80211_IFTYPE_STATION |NL80211_IFTYPE_ADHOC | +NL80211_IFTYPE_MESH_POINT |NL80211_IFTYPE_AP ); dev->channel_change_time =1000 ;/* TODO: find actual value */
Thanks!
Acked-by Andrey Yurovsky <[email protected]>
Quoted 48 lines · Christian Lamparter
This patch enables Mesh Point operation for any p54 device.
Signed-off-by Christian Lamparter <[email protected]>---
diff -Nurpa/drivers/net/wireless/p54/p54common.cb/drivers/net/wireless/p54/p54common.cdrivers/net/wireless/p54/p54common.c 2008-11-02 13:34:24.000000000 +0100 renamed from drivers/net/wireless/p54/p54common.c 2008-11-01 20:41:08.000000000 +0100 +5
-0@@ -1059,6 +1059,7 @@ static int p54_tx_fill(struct ieee80211_ break; case NL80211_IFTYPE_AP: case NL80211_IFTYPE_ADHOC: + case NL80211_IFTYPE_MESH_POINT: if (info->flags & IEEE80211_TX_CTL_SEND_AFTER_DTIM) { *aid = 0; *queue = 3;@@ -1571,6 +1572,7 @@ static int p54_add_interface(struct ieee case NL80211_IFTYPE_STATION: case NL80211_IFTYPE_ADHOC: case NL80211_IFTYPE_AP: + case NL80211_IFTYPE_MESH_POINT: priv->mode = conf->type; break; default:@@ -1590,6 +1592,7 @@ static int p54_add_interface(struct ieee p54_setup_mac(dev, P54_FILTER_TYPE_AP, priv->mac_addr); break; case NL80211_IFTYPE_ADHOC: + case NL80211_IFTYPE_MESH_POINT: p54_setup_mac(dev, P54_FILTER_TYPE_IBSS, NULL); break; default:@@ -1654,6 +1657,7 @@ static int p54_config_interface(struct i break; case NL80211_IFTYPE_AP: case NL80211_IFTYPE_ADHOC: + case NL80211_IFTYPE_MESH_POINT: memcpy(priv->bssid, conf->bssid, ETH_ALEN); ret = p54_set_freq(dev, dev->conf.channel->center_freq); if (ret)@@ -1829,6 +1833,7 @@ struct ieee80211_hw *p54_init_common(siz dev->wiphy->interface_modes = BIT(NL80211_IFTYPE_STATION | NL80211_IFTYPE_ADHOC | + NL80211_IFTYPE_MESH_POINT | NL80211_IFTYPE_AP); dev->channel_change_time = 1000; /* TODO: find actual value */
PATCH 1/4 p54: enable Mesh Point support v2
This patch enables Mesh Point operation for any p54 device.
Signed-off-by Christian Lamparter <[email protected]>
---
drivers/net/wireless/p54/p54common.c +8 -3
@@ -1059,6 +1059,7 @@ static int p54_tx_fill(struct ieee80211_break ;case NL80211_IFTYPE_AP :case NL80211_IFTYPE_ADHOC : +case NL80211_IFTYPE_MESH_POINT :if (info->flags &IEEE80211_TX_CTL_SEND_AFTER_DTIM ) { *aid =0 ; *queue =3 ;
@@ -1571,6 +1572,7 @@ static int p54_add_interface(struct ieeecase NL80211_IFTYPE_STATION :case NL80211_IFTYPE_ADHOC :case NL80211_IFTYPE_AP : +case NL80211_IFTYPE_MESH_POINT : priv->mode = conf->type;break ;default :
@@ -1590,6 +1592,7 @@ static int p54_add_interface(struct ieeep54_setup_mac (dev,P54_FILTER_TYPE_AP , priv->mac_addr);break ;case NL80211_IFTYPE_ADHOC : +case NL80211_IFTYPE_MESH_POINT :p54_setup_mac (dev,P54_FILTER_TYPE_IBSS ,NULL );break ;default :
@@ -1654,6 +1657,7 @@ static int p54_config_interface(struct ibreak ;case NL80211_IFTYPE_AP :case NL80211_IFTYPE_ADHOC : +case NL80211_IFTYPE_MESH_POINT :memcpy (priv->bssid, conf->bssid,ETH_ALEN ); ret =p54_set_freq (dev, dev->conf.channel->center_freq);if (ret)
@@ -1827,9 +1831,10 @@ struct ieee80211_hw *p54_init_common(sizIEEE80211_HW_SIGNAL_DBM |IEEE80211_HW_NOISE_DBM ; - dev->wiphy->interface_modes =BIT (NL80211_IFTYPE_STATION | -NL80211_IFTYPE_ADHOC | -NL80211_IFTYPE_AP ); + dev->wiphy->interface_modes =BIT (NL80211_IFTYPE_STATION ) | +BIT (NL80211_IFTYPE_ADHOC ) | +BIT (NL80211_IFTYPE_AP ) | +BIT (NL80211_IFTYPE_MESH_POINT ); dev->channel_change_time =1000 ;/* TODO: find actual value */ priv->tx_stats[0 ].limit =1 ;/* Beacon queue */