The Beceem WIMAX was generating compile warnings on 64bit machines, which were: drivers/staging/bcm/CmHost.c: In function ‘StoreCmControlResponseMessage’: drivers/staging/bcm/CmHost.c:1503:3: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (struct bcm_connect_mgr_params *) ntohl( ^ drivers/staging/bcm/CmHost.c:1546:3: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (struct bcm_connect_mgr_params *) ntohl( ^ drivers/staging/bcm/CmHost.c:1564:3: warning: cast to pointer from integer of different size [-Wint-to-pointer-cast] (struct bcm_connect_mgr_params *) ntohl( This resolves the issue by generating 64bit friendly code. Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@xxxxxxxxx> --- drivers/staging/bcm/CmHost.c | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/drivers/staging/bcm/CmHost.c b/drivers/staging/bcm/CmHost.c index adca0ce..29fa05d 100644 --- a/drivers/staging/bcm/CmHost.c +++ b/drivers/staging/bcm/CmHost.c @@ -1499,9 +1499,15 @@ ULONG StoreCmControlResponseMessage(struct bcm_mini_adapter *Adapter, } /* this can't possibly be right */ +#ifdef CONFIG_32BIT pstAddIndication->psfAuthorizedSet = (struct bcm_connect_mgr_params *) ntohl( (ULONG)pstAddIndication->psfAuthorizedSet); +#else + pstAddIndication->psfAuthorizedSet = + (struct bcm_connect_mgr_params *)(u64)ntohl( + (ULONG)pstAddIndication->psfAuthorizedSet); +#endif if (pstAddIndicationAlt->u8Type == DSA_REQ) { struct bcm_add_request AddRequest; @@ -1542,9 +1548,15 @@ ULONG StoreCmControlResponseMessage(struct bcm_mini_adapter *Adapter, return 0; } +#ifdef CONFIG_32BIT pstAddIndication->psfAdmittedSet = (struct bcm_connect_mgr_params *) ntohl( (ULONG) pstAddIndication->psfAdmittedSet); +#else + pstAddIndication->psfAdmittedSet = + (struct bcm_connect_mgr_params *)(u64)ntohl( + (ULONG) pstAddIndication->psfAdmittedSet); +#endif /* ACTIVE SET */ pstAddIndication->psfActiveSet = (struct bcm_connect_mgr_params *) @@ -1560,9 +1572,15 @@ ULONG StoreCmControlResponseMessage(struct bcm_mini_adapter *Adapter, return 0; } +#ifdef CONFIG_32BIT pstAddIndication->psfActiveSet = (struct bcm_connect_mgr_params *) ntohl( (ULONG)pstAddIndication->psfActiveSet); +#else + pstAddIndication->psfActiveSet = + (struct bcm_connect_mgr_params *)(u64)ntohl( + (ULONG)pstAddIndication->psfActiveSet); +#endif (*puBufferLength) = sizeof(struct bcm_add_indication); *(struct bcm_add_indication *)pvBuffer = *pstAddIndication; -- 1.9.3 _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/driverdev-devel