Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit e03bbb62 authored by Emmanuel Grumbach's avatar Emmanuel Grumbach
Browse files

iwlwifi: don't disable SCD chain extension on newer devices



7000 device series have a fix for this hardware feature.
Stop disabling it, and get an improvement in Tx throughput.
This feature allows the scheduler to fetch more frames on
the fly while an A-MPDU is being built - which means that
we can get larger A-MPDU. This, of course, give an
improvement in the Tx throughput.

Signed-off-by: default avatarEmmanuel Grumbach <emmanuel.grumbach@intel.com>
parent c6e37a68
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -62,6 +62,7 @@ static const struct iwl_base_params iwl1000_base_params = {
	.led_compensation = 51,
	.wd_timeout = IWL_WATCHDOG_DISABLED,
	.max_event_log_size = 128,
	.scd_chain_ext_wa = true,
};

static const struct iwl_ht_params iwl1000_ht_params = {
+2 −0
Original line number Diff line number Diff line
@@ -75,6 +75,7 @@ static const struct iwl_base_params iwl2000_base_params = {
	.wd_timeout = IWL_DEF_WD_TIMEOUT,
	.max_event_log_size = 512,
	.shadow_reg_enable = false, /* TODO: fix bugs using this feature */
	.scd_chain_ext_wa = true,
};


@@ -88,6 +89,7 @@ static const struct iwl_base_params iwl2030_base_params = {
	.wd_timeout = IWL_LONG_WD_TIMEOUT,
	.max_event_log_size = 512,
	.shadow_reg_enable = false, /* TODO: fix bugs using this feature */
	.scd_chain_ext_wa = true,
};

static const struct iwl_ht_params iwl2000_ht_params = {
+1 −0
Original line number Diff line number Diff line
@@ -61,6 +61,7 @@ static const struct iwl_base_params iwl5000_base_params = {
	.led_compensation = 51,
	.wd_timeout = IWL_WATCHDOG_DISABLED,
	.max_event_log_size = 512,
	.scd_chain_ext_wa = true,
};

static const struct iwl_ht_params iwl5000_ht_params = {
+3 −0
Original line number Diff line number Diff line
@@ -85,6 +85,7 @@ static const struct iwl_base_params iwl6000_base_params = {
	.wd_timeout = IWL_DEF_WD_TIMEOUT,
	.max_event_log_size = 512,
	.shadow_reg_enable = false, /* TODO: fix bugs using this feature */
	.scd_chain_ext_wa = true,
};

static const struct iwl_base_params iwl6050_base_params = {
@@ -97,6 +98,7 @@ static const struct iwl_base_params iwl6050_base_params = {
	.wd_timeout = IWL_DEF_WD_TIMEOUT,
	.max_event_log_size = 1024,
	.shadow_reg_enable = false, /* TODO: fix bugs using this feature */
	.scd_chain_ext_wa = true,
};

static const struct iwl_base_params iwl6000_g2_base_params = {
@@ -109,6 +111,7 @@ static const struct iwl_base_params iwl6000_g2_base_params = {
	.wd_timeout = IWL_LONG_WD_TIMEOUT,
	.max_event_log_size = 512,
	.shadow_reg_enable = false, /* TODO: fix bugs using this feature */
	.scd_chain_ext_wa = true,
};

static const struct iwl_ht_params iwl6000_ht_params = {
+2 −0
Original line number Diff line number Diff line
@@ -148,6 +148,7 @@ static inline u8 num_of_ant(u8 mask)
 * @shadow_reg_enable: HW shadow register support
 * @apmg_wake_up_wa: should the MAC access REQ be asserted when a command
 *	is in flight. This is due to a HW bug in 7260, 3160 and 7265.
 * @scd_chain_ext_wa: should the chain extension feature in SCD be disabled.
 */
struct iwl_base_params {
	int eeprom_size;
@@ -163,6 +164,7 @@ struct iwl_base_params {
	const bool shadow_reg_enable;
	const bool pcie_l1_allowed;
	const bool apmg_wake_up_wa;
	const bool scd_chain_ext_wa;
};

/*
Loading