Commit ec8aa669 authored by Felix Fietkau's avatar Felix Fietkau Committed by John W. Linville
Browse files

mac80211: add the minstrel_ht rate control algorithm

parent b4df4708
Loading
Loading
Loading
Loading
+7 −0
Original line number Diff line number Diff line
@@ -33,6 +33,13 @@ config MAC80211_RC_MINSTREL
	---help---
	  This option enables the 'minstrel' TX rate control algorithm

config MAC80211_RC_MINSTREL_HT
	bool "Minstrel 802.11n support" if EMBEDDED
	depends on MAC80211_RC_MINSTREL
	default y
	---help---
	  This option enables the 'minstrel_ht' TX rate control algorithm

choice
	prompt "Default rate control algorithm"
	depends on MAC80211_HAS_RC
+4 −0
Original line number Diff line number Diff line
@@ -51,7 +51,11 @@ rc80211_pid-$(CONFIG_MAC80211_DEBUGFS) += rc80211_pid_debugfs.o
rc80211_minstrel-y := rc80211_minstrel.o
rc80211_minstrel-$(CONFIG_MAC80211_DEBUGFS) += rc80211_minstrel_debugfs.o

rc80211_minstrel_ht-y := rc80211_minstrel_ht.o
rc80211_minstrel_ht-$(CONFIG_MAC80211_DEBUGFS) += rc80211_minstrel_ht_debugfs.o

mac80211-$(CONFIG_MAC80211_RC_PID) += $(rc80211_pid-y)
mac80211-$(CONFIG_MAC80211_RC_MINSTREL) += $(rc80211_minstrel-y)
mac80211-$(CONFIG_MAC80211_RC_MINSTREL_HT) += $(rc80211_minstrel_ht-y)

ccflags-y += -D__CHECK_ENDIAN__
+7 −0
Original line number Diff line number Diff line
@@ -704,6 +704,10 @@ static int __init ieee80211_init(void)
	if (ret)
		return ret;

	ret = rc80211_minstrel_ht_init();
	if (ret)
		goto err_minstrel;

	ret = rc80211_pid_init();
	if (ret)
		goto err_pid;
@@ -716,6 +720,8 @@ static int __init ieee80211_init(void)
 err_netdev:
	rc80211_pid_exit();
 err_pid:
	rc80211_minstrel_ht_exit();
 err_minstrel:
	rc80211_minstrel_exit();

	return ret;
@@ -724,6 +730,7 @@ static int __init ieee80211_init(void)
static void __exit ieee80211_exit(void)
{
	rc80211_pid_exit();
	rc80211_minstrel_ht_exit();
	rc80211_minstrel_exit();

	/*
+13 −0
Original line number Diff line number Diff line
@@ -147,5 +147,18 @@ static inline void rc80211_minstrel_exit(void)
}
#endif

#ifdef CONFIG_MAC80211_RC_MINSTREL_HT
extern int rc80211_minstrel_ht_init(void);
extern void rc80211_minstrel_ht_exit(void);
#else
static inline int rc80211_minstrel_ht_init(void)
{
	return 0;
}
static inline void rc80211_minstrel_ht_exit(void)
{
}
#endif


#endif /* IEEE80211_RATE_H */
+824 −0

File added.

Preview size limit exceeded, changes collapsed.

Loading