diff options
author | Mursalin Akon <makon@nvidia.com> | 2012-11-30 10:43:06 -0800 |
---|---|---|
committer | Rohan Somvanshi <rsomvanshi@nvidia.com> | 2012-12-21 05:07:58 -0800 |
commit | bdd1f650d28b425d9584f04d0347379537a03542 (patch) | |
tree | 0a2eb4e4c2f80a31e76039c8aa73a214723d1d5c /drivers | |
parent | 0b2a18a3681f0934fc16f448d93934de3585ec48 (diff) |
bcmdhd: do not use SET_NETDEV_DEV for p2p (HACK)
With SET_NETDEV_DEV, network manager starts
using all the p2p* interfaces. Without
SET_NETDEV_DEV, network manager is not aware
of these virtual interfaces.
Bug 1188451
Change-Id: I3e8be1d20d92cefc0d3debea09fdca445652571a
Signed-off-by: Mursalin Akon <makon@nvidia.com>
Reviewed-on: http://git-master/r/172440
Reviewed-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Tested-by: Rohan Somvanshi <rsomvanshi@nvidia.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/net/wireless/bcmdhd/Kconfig | 9 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/wl_cfg80211.c | 2 | ||||
-rw-r--r-- | drivers/net/wireless/bcmdhd/wl_cfgp2p.c | 2 |
3 files changed, 13 insertions, 0 deletions
diff --git a/drivers/net/wireless/bcmdhd/Kconfig b/drivers/net/wireless/bcmdhd/Kconfig index b02ba51301bc..aafdd5a196f9 100644 --- a/drivers/net/wireless/bcmdhd/Kconfig +++ b/drivers/net/wireless/bcmdhd/Kconfig @@ -91,3 +91,12 @@ config BCMDHD_CUSTOM_REGULATORY_DOMAIN default y ---help--- Use Custom Regulatory Domain set by driver. + +config BCMDHD_DISABLE_P2P_SYSFS_DEVICE_NODE + bool "Disable sysfs entry for P2P interfaces" + depends on BCMDHD + default n + ---help--- + Disable creation of sysfs device node for P2P interfaces. + This is a workaround to prevent management tools from + directly managing P2P virtual devices. diff --git a/drivers/net/wireless/bcmdhd/wl_cfg80211.c b/drivers/net/wireless/bcmdhd/wl_cfg80211.c index 2db885de673c..d87944417c35 100644 --- a/drivers/net/wireless/bcmdhd/wl_cfg80211.c +++ b/drivers/net/wireless/bcmdhd/wl_cfg80211.c @@ -1120,7 +1120,9 @@ wl_cfg80211_add_virtual_iface(struct wiphy *wiphy, char *name, vwdev->iftype = type; _ndev = wl_to_p2p_bss_ndev(wl, P2PAPI_BSSCFG_CONNECTION); _ndev->ieee80211_ptr = vwdev; +#ifndef CONFIG_BCMDHD_DISABLE_P2P_SYSFS_DEVICE_NODE SET_NETDEV_DEV(_ndev, wiphy_dev(vwdev->wiphy)); +#endif vwdev->netdev = _ndev; wl_set_drv_status(wl, READY, _ndev); wl->p2p->vif_created = true; diff --git a/drivers/net/wireless/bcmdhd/wl_cfgp2p.c b/drivers/net/wireless/bcmdhd/wl_cfgp2p.c index 2c0f022540c4..aebb03f5047f 100644 --- a/drivers/net/wireless/bcmdhd/wl_cfgp2p.c +++ b/drivers/net/wireless/bcmdhd/wl_cfgp2p.c @@ -2148,7 +2148,9 @@ wl_cfgp2p_register_ndev(struct wl_priv *wl) net->ethtool_ops = &cfgp2p_ethtool_ops; #endif /* LINUX_VERSION_CODE >= KERNEL_VERSION(2, 6, 24) */ +#ifndef CONFIG_BCMDHD_DISABLE_P2P_SYSFS_DEVICE_NODE SET_NETDEV_DEV(net, wiphy_dev(wdev->wiphy)); +#endif /* Associate p2p0 network interface with new wdev */ wdev->netdev = net; |