Browse Source

qcacld-3.0: Fix compilation error caused by 64-bit division

The 64-bit division in 32-bit architecture call 64-bit-by-64-bit
division routines "__aeabi_uldivmod", which is not defined for
the 32-bit architecture.

Follow exist solution and use do_div asm-generic library api for
division operation.

Change-Id: I056f729e6f7586d26428868abd71acfd7130fdd8
CRs-Fixed: 2796163
Wu Gao 4 năm trước cách đây
mục cha
commit
579c810302
1 tập tin đã thay đổi với 4 bổ sung3 xóa
  1. 4 3
      core/dp/txrx3.0/dp_fisa_rx.c

+ 4 - 3
core/dp/txrx3.0/dp_fisa_rx.c

@@ -1763,6 +1763,7 @@ QDF_STATUS dp_rx_dump_fisa_stats(struct dp_soc *soc)
 		&((struct dp_fisa_rx_sw_ft *)rx_fst->base)[0];
 	int ft_size = rx_fst->max_entries;
 	int i;
+	uint64_t avg_aggregated;
 
 	dp_info("Num of flows programmed %d", rx_fst->add_flow_count);
 	dp_info("Num of flows evicted %d", rx_fst->del_flow_count);
@@ -1779,9 +1780,9 @@ QDF_STATUS dp_rx_dump_fisa_stats(struct dp_soc *soc)
 		dp_info("num msdu aggr %d", sw_ft_entry->aggr_count);
 		dp_info("flush count %d", sw_ft_entry->flush_count);
 		dp_info("bytes_aggregated %llu", sw_ft_entry->bytes_aggregated);
-		dp_info("avg aggregation %llu",
-			sw_ft_entry->bytes_aggregated / sw_ft_entry->flush_count
-			);
+		avg_aggregated = sw_ft_entry->bytes_aggregated;
+		qdf_do_div(avg_aggregated, sw_ft_entry->flush_count);
+		dp_info("avg aggregation %llu", avg_aggregated);
 		print_flow_tuple(&sw_ft_entry->rx_flow_tuple_info);
 	}
 	return QDF_STATUS_SUCCESS;