diff options
| -rw-r--r-- | net/mac80211/Kconfig | 31 | ||||
| -rw-r--r-- | net/mac80211/Makefile | 18 | ||||
| -rw-r--r-- | net/mac80211/mesh_pathtbl.c | 1 | ||||
| -rw-r--r-- | net/mac80211/rate.h | 4 | ||||
| -rw-r--r-- | net/mac80211/rc80211_pid_algo.c | 10 | 
5 files changed, 14 insertions, 50 deletions
diff --git a/net/mac80211/Kconfig b/net/mac80211/Kconfig index 594bc7319ca..661d3c29148 100644 --- a/net/mac80211/Kconfig +++ b/net/mac80211/Kconfig @@ -27,6 +27,14 @@ comment "QoS/HT support needs CONFIG_NETDEVICES_MULTIQUEUE"  menu "Rate control algorithm selection"  	depends on MAC80211 != n +config MAC80211_RC_PID +	bool "PID controller based rate control algorithm" if EMBEDDED +	default y +	---help--- +	  This option enables a TX rate control algorithm for +	  mac80211 that uses a PID controller to select the TX +	  rate. +  choice  	prompt "Default rate control algorithm"  	default MAC80211_RC_DEFAULT_PID @@ -38,40 +46,19 @@ choice  config MAC80211_RC_DEFAULT_PID  	bool "PID controller based rate control algorithm" -	select MAC80211_RC_PID +	depends on MAC80211_RC_PID  	---help---  	  Select the PID controller based rate control as the  	  default rate control algorithm. You should choose  	  this unless you know what you are doing. -config MAC80211_RC_DEFAULT_NONE -	bool "No default algorithm" -	depends on EMBEDDED -	help -	  Selecting this option will select no default algorithm -	  and allow you to not build any. Do not choose this -	  option unless you know your driver comes with another -	  suitable algorithm.  endchoice -comment "Selecting 'y' for an algorithm will" -comment "build the algorithm into mac80211." -  config MAC80211_RC_DEFAULT  	string  	default "pid" if MAC80211_RC_DEFAULT_PID  	default "" -config MAC80211_RC_PID -	tristate "PID controller based rate control algorithm" -	---help--- -	  This option enables a TX rate control algorithm for -	  mac80211 that uses a PID controller to select the TX -	  rate. - -	  Say Y or M unless you're sure you want to use a -	  different rate control algorithm. -  endmenu  config MAC80211_MESH diff --git a/net/mac80211/Makefile b/net/mac80211/Makefile index 1d2a4e010e5..fa47438e338 100644 --- a/net/mac80211/Makefile +++ b/net/mac80211/Makefile @@ -1,13 +1,5 @@  obj-$(CONFIG_MAC80211) += mac80211.o -# objects for PID algorithm -rc80211_pid-y := rc80211_pid_algo.o -rc80211_pid-$(CONFIG_MAC80211_DEBUGFS) += rc80211_pid_debugfs.o - -# build helper for PID algorithm -rc-pid-y := $(rc80211_pid-y) -rc-pid-m := rc80211_pid.o -  # mac80211 objects  mac80211-y := \  	main.o \ @@ -42,10 +34,8 @@ mac80211-$(CONFIG_MAC80211_MESH) += \  	mesh_plink.o \  	mesh_hwmp.o +# objects for PID algorithm +rc80211_pid-y := rc80211_pid_algo.o +rc80211_pid-$(CONFIG_MAC80211_DEBUGFS) += rc80211_pid_debugfs.o -# Build rate control algorithm(s) -CFLAGS_rc80211_pid_algo.o += -DRC80211_PID_COMPILE -mac80211-$(CONFIG_MAC80211_RC_PID) += $(rc-pid-$(CONFIG_MAC80211_RC_PID)) - -# Modular rate algorithms are assigned to mac80211-m - make separate modules -obj-m += $(mac80211-m) +mac80211-$(CONFIG_MAC80211_RC_PID) += $(rc80211_pid-y) diff --git a/net/mac80211/mesh_pathtbl.c b/net/mac80211/mesh_pathtbl.c index 947b13b4072..5f88a2e6ee5 100644 --- a/net/mac80211/mesh_pathtbl.c +++ b/net/mac80211/mesh_pathtbl.c @@ -262,7 +262,6 @@ void mesh_plink_broken(struct sta_info *sta)  	}  	rcu_read_unlock();  } -EXPORT_SYMBOL(mesh_plink_broken);  /**   * mesh_path_flush_by_nexthop - Deletes mesh paths if their next hop matches diff --git a/net/mac80211/rate.h b/net/mac80211/rate.h index 0ed9c8a2f56..ede7ab56f65 100644 --- a/net/mac80211/rate.h +++ b/net/mac80211/rate.h @@ -162,9 +162,7 @@ void rate_control_deinitialize(struct ieee80211_local *local);  /* Rate control algorithms */ -#if defined(RC80211_PID_COMPILE) || \ -	(defined(CONFIG_MAC80211_RC_PID) && \ -	 !defined(CONFIG_MAC80211_RC_PID_MODULE)) +#ifdef CONFIG_MAC80211_RC_PID  extern int rc80211_pid_init(void);  extern void rc80211_pid_exit(void);  #else diff --git a/net/mac80211/rc80211_pid_algo.c b/net/mac80211/rc80211_pid_algo.c index e8945413e4a..62388f8e902 100644 --- a/net/mac80211/rc80211_pid_algo.c +++ b/net/mac80211/rc80211_pid_algo.c @@ -540,11 +540,6 @@ static struct rate_control_ops mac80211_rcpid = {  #endif  }; -MODULE_DESCRIPTION("PID controller based rate control algorithm"); -MODULE_AUTHOR("Stefano Brivio"); -MODULE_AUTHOR("Mattias Nissler"); -MODULE_LICENSE("GPL"); -  int __init rc80211_pid_init(void)  {  	return ieee80211_rate_control_register(&mac80211_rcpid); @@ -554,8 +549,3 @@ void rc80211_pid_exit(void)  {  	ieee80211_rate_control_unregister(&mac80211_rcpid);  } - -#ifdef CONFIG_MAC80211_RC_PID_MODULE -module_init(rc80211_pid_init); -module_exit(rc80211_pid_exit); -#endif  |