From: Colin W. <cjw...@de...> - 2003-11-07 12:47:45
|
Hi, I've been trying to get current acx100 CVS working on a PowerBook with a USR2210 card running 2.6.0-test9. I suspect that I may be in for an uphill battle here :-), particularly as it's big-endian, etc. I'm still trying to track down PCI resource collisions, so I haven't got the module successfully inserted yet. This patch fixes one use of floating-point in the kernel, which isn't allowed on many architectures and in particular results in link errors on powerpc. Both max_rate and the result are int, so integer division rather than float multiplication will do just fine. --- src/acx100_helper2.c.orig 2003-10-07 19:36:32.000000000 +0100 +++ src/acx100_helper2.c 2003-11-07 03:23:47.000000000 +0000 @@ -1448,7 +1448,7 @@ ss->essid, ss->channel, a[0], a[1], a[2], a[3], a[4], a[5], (WLAN_GET_MGMT_CAP_INFO_IBSS(ss->cap)) ? "Ad-Hoc peer" : "Access Point", - (int)(max_rate * 0.5), (max_rate & 1) ? ".5" : "", + (int)(max_rate / 2), (max_rate & 1) ? ".5" : "", ss->sir, ss->snr); /* found one station --> increment counter */ This patch fixes an incorrect type for the argument to spin_lock_irqsave() in several places, which resulted in compile warnings on powerpc. --- src/idma.c.orig 2003-10-07 19:30:32.000000000 +0100 +++ src/idma.c 2003-11-06 17:45:19.000000000 +0000 @@ -327,7 +327,7 @@ { struct txhostdescriptor *header; struct txhostdescriptor *payload; - int flags; + unsigned long flags; int i; /* header and payload are located in adjacent descriptors */ @@ -461,7 +461,7 @@ TIWLAN_DC *pDc = &wlandev->dc; txdesc_t *pTxDesc; UINT finger, watch; - int flags; + unsigned long flags; FN_ENTER; @@ -730,7 +730,7 @@ TIWLAN_DC *pDc; struct rxhostdescriptor *pDesc; UINT16 buf_len; - int flags; + unsigned long flags; int curr_idx; int count = 0; p80211_hdr_t *buf; @@ -1429,7 +1429,7 @@ { struct TIWLAN_DC * pDc = &wlandev->dc; struct txdescriptor *tx_desc; - int flags; + unsigned long flags; FN_ENTER; Thanks, -- Colin Watson [cjw...@fl...] |