Search Linux Wireless

[PATCH] iw: fix typos in MCS set parsing code

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



The current code uses wrong binary operator for masking,
and the shift values for the 'tx_max_num_spatial_streams' and
'tx_unequal_modulation' fields are off-by-one.

Signed-off-by: Gabor Juhos <juhosg@xxxxxxxxxxx>
---
 info.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/info.c b/info.c
index 2db0fc7..542745b 100644
--- a/info.c
+++ b/info.c
@@ -159,8 +159,8 @@ static int print_phy_handler(struct nl_msg *msg, void *arg)
 			max_rx_supp_data_rate = ((mcs[10] >> 8) & ((mcs[11] & 0x3) << 8));
 			tx_mcs_set_defined = !!(mcs[12] & (1 << 0));
 			tx_mcs_set_equal = !(mcs[12] & (1 << 1));
-			tx_max_num_spatial_streams = (mcs[12] | ((1 << 3) | (1 << 4))) + 1;
-			tx_unequal_modulation = !!(mcs[12] & (1 << 5));
+			tx_max_num_spatial_streams = (mcs[12] & ((1 << 2) | (1 << 3))) + 1;
+			tx_unequal_modulation = !!(mcs[12] & (1 << 4));
 
 			if (max_rx_supp_data_rate)
 				printf("\t\tHT Max RX data rate: %d Mbps\n", max_rx_supp_data_rate);
-- 
1.5.3.2

--
To unsubscribe from this list: send the line "unsubscribe linux-wireless" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Host AP]     [ATH6KL]     [Linux Bluetooth]     [Linux Netdev]     [Kernel Newbies]     [Linux Kernel]     [IDE]     [Security]     [Git]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux ATA RAID]     [Samba]     [Device Mapper]
  Powered by Linux