aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2015-11-18 16:02:39 -0500
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2015-12-21 21:32:52 -0500
commite7cfb3907d1c88cea8977fa267149cb2297fb07e (patch)
treefe34f2099a709ffb0d57284668d127546d72d0f7
parentf6e9b914332f5c60249a911c687eea1aa0cd37d5 (diff)
staging/emxx_udc: fix 64-bit warnings
ARCH_SHMOBILE is coming to arm64, which creates new warnings in allmodconfig: drivers/staging/emxx_udc/emxx_udc.c: In function '_nbu2ss_out_dma': drivers/staging/emxx_udc/emxx_udc.c:843:45: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast] _nbu2ss_writel(&preg->EP_DCR[num].EP_TADR, (u32)pBuffer); This is clearly a mistake from confusing a dma_addr_t with a pointer, so the fix is to use the correct types in two places. The third warning of this kind is a check for an unaligned pointer, which should be done by casting the pointer to uintptr_t, not int. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--drivers/staging/emxx_udc/emxx_udc.c10
1 files changed, 5 insertions, 5 deletions
diff --git a/drivers/staging/emxx_udc/emxx_udc.c b/drivers/staging/emxx_udc/emxx_udc.c
index 4e6c16af40fc..c168845cbb91 100644
--- a/drivers/staging/emxx_udc/emxx_udc.c
+++ b/drivers/staging/emxx_udc/emxx_udc.c
@@ -823,7 +823,7 @@ static int _nbu2ss_out_dma(
823 u32 length 823 u32 length
824) 824)
825{ 825{
826 u8 *pBuffer; 826 dma_addr_t pBuffer;
827 u32 mpkt; 827 u32 mpkt;
828 u32 lmpkt; 828 u32 lmpkt;
829 u32 dmacnt; 829 u32 dmacnt;
@@ -836,7 +836,7 @@ static int _nbu2ss_out_dma(
836 return 1; /* DMA is forwarded */ 836 return 1; /* DMA is forwarded */
837 837
838 req->dma_flag = TRUE; 838 req->dma_flag = TRUE;
839 pBuffer = (u8 *)req->req.dma; 839 pBuffer = req->req.dma;
840 pBuffer += req->req.actual; 840 pBuffer += req->req.actual;
841 841
842 /* DMA Address */ 842 /* DMA Address */
@@ -1034,7 +1034,7 @@ static int _nbu2ss_in_dma(
1034 u32 length 1034 u32 length
1035) 1035)
1036{ 1036{
1037 u8 *pBuffer; 1037 dma_addr_t pBuffer;
1038 u32 mpkt; /* MaxPacketSize */ 1038 u32 mpkt; /* MaxPacketSize */
1039 u32 lmpkt; /* Last Packet Data Size */ 1039 u32 lmpkt; /* Last Packet Data Size */
1040 u32 dmacnt; /* IN Data Size */ 1040 u32 dmacnt; /* IN Data Size */
@@ -1080,7 +1080,7 @@ static int _nbu2ss_in_dma(
1080 _nbu2ss_writel(&preg->EP_DCR[num].EP_DCR2, data); 1080 _nbu2ss_writel(&preg->EP_DCR[num].EP_DCR2, data);
1081 1081
1082 /* Address setting */ 1082 /* Address setting */
1083 pBuffer = (u8 *)req->req.dma; 1083 pBuffer = req->req.dma;
1084 pBuffer += req->req.actual; 1084 pBuffer += req->req.actual;
1085 _nbu2ss_writel(&preg->EP_DCR[num].EP_TADR, (u32)pBuffer); 1085 _nbu2ss_writel(&preg->EP_DCR[num].EP_TADR, (u32)pBuffer);
1086 1086
@@ -2728,7 +2728,7 @@ static int nbu2ss_ep_queue(
2728 spin_lock_irqsave(&udc->lock, flags); 2728 spin_lock_irqsave(&udc->lock, flags);
2729 2729
2730#ifdef USE_DMA 2730#ifdef USE_DMA
2731 if ((u32)req->req.buf & 0x3) 2731 if ((uintptr_t)req->req.buf & 0x3)
2732 req->unaligned = TRUE; 2732 req->unaligned = TRUE;
2733 else 2733 else
2734 req->unaligned = FALSE; 2734 req->unaligned = FALSE;