Ver código fonte

qcacld-3.0: Enhance logging for MC address list

qcacld-2.0 to qcacld-3.0 propagation

Currently, if MC list count is more than mc count that
target can support then host configures only max count that
target can support.Rest of MC addresses are dropped.
Now if host wakes up for any MC packet, there is no way to
identify if MC address was configured to FW or not.
Change the code to print all the MC address list that userspace
has sent to Driver and the MC address list that is sent to FW.

Change-Id: Idd63385a657d1af550cf07bbfe052ce465d30608
CRs-Fixed: 1023043
Sachin Ahuja 8 anos atrás
pai
commit
a69c72a9fb
2 arquivos alterados com 8 adições e 1 exclusões
  1. 5 1
      core/hdd/src/wlan_hdd_main.c
  2. 3 0
      core/hdd/src/wlan_hdd_power.c

+ 5 - 1
core/hdd/src/wlan_hdd_main.c

@@ -2260,7 +2260,8 @@ static void __hdd_set_multicast_list(struct net_device *dev)
 		adapter->mc_addr_list.mc_cnt = 0;
 	} else {
 		mc_count = netdev_mc_count(dev);
-		hdd_notice("mc_count = %u", mc_count);
+		hdd_notice("mc_count : %u", mc_count);
+
 		if (mc_count > WLAN_HDD_MAX_MC_ADDR_LIST) {
 			hdd_notice("No free filter available; allow all multicast frames");
 			adapter->mc_addr_list.mc_cnt = 0;
@@ -2270,6 +2271,9 @@ static void __hdd_set_multicast_list(struct net_device *dev)
 		adapter->mc_addr_list.mc_cnt = mc_count;
 
 		netdev_for_each_mc_addr(ha, dev) {
+			hdd_notice("ha_addr[%d] "MAC_ADDRESS_STR,
+				i, MAC_ADDR_ARRAY(ha->addr));
+
 			if (i == mc_count)
 				break;
 			/*

+ 3 - 0
core/hdd/src/wlan_hdd_power.c

@@ -1076,6 +1076,9 @@ void wlan_hdd_set_mc_addr_list(hdd_adapter_t *pAdapter, uint8_t set)
 			/* Set multicast filter */
 			sme_8023_multicast_list(hHal, pAdapter->sessionId,
 						pMulticastAddrs);
+		} else {
+			hdd_info("MC address list not sent to FW, cnt: %d",
+					pAdapter->mc_addr_list.mc_cnt);
 		}
 	} else {
 		/* Need to clear only if it was previously configured */