Răsfoiți Sursa

qcacld-3.0: Fix the 64-bit division linking error on 32bit arch

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.

Use do_div asm-generic library api for division operation to avoid
the arch specific division "undefined symbol:  __aeabi_uldivmod"
linking error during wlan driver load on 32-bit target.

CRs-Fixed: 2014971
Change-Id: I43253d1eb9f726ac0a96d21f4511a5a282c7bb2d
Sarada Prasanna Garnayak 8 ani în urmă
părinte
comite
f21c296946
1 a modificat fișierele cu 1 adăugiri și 1 ștergeri
  1. 1 1
      core/sme/src/csr/csr_api_roam.c

+ 1 - 1
core/sme/src/csr/csr_api_roam.c

@@ -1980,7 +1980,7 @@ QDF_STATUS csr_roam_read_tsf(tpAniSirGlobal pMac, uint8_t *pTimestamp,
 	timer_diff = (qdf_get_monotonic_boottime_ns()  -
 				pBssDescription->scansystimensec);
 	/* Convert msec to micro sec timer */
-	timer_diff = (timer_diff / SYSTEM_TIME_NSEC_TO_USEC);
+	timer_diff = do_div(timer_diff, SYSTEM_TIME_NSEC_TO_USEC);
 	timeStamp[0] = pBssDescription->timeStamp[0];
 	timeStamp[1] = pBssDescription->timeStamp[1];
 	update_cckmtsf(&(timeStamp[0]), &(timeStamp[1]), &timer_diff);