diff options
author | Arnd Bergmann <arnd@arndb.de> | 2015-11-18 16:02:39 -0500 |
---|---|---|
committer | Greg Kroah-Hartman <gregkh@linuxfoundation.org> | 2015-12-21 21:32:52 -0500 |
commit | e7cfb3907d1c88cea8977fa267149cb2297fb07e (patch) | |
tree | fe34f2099a709ffb0d57284668d127546d72d0f7 | |
parent | f6e9b914332f5c60249a911c687eea1aa0cd37d5 (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.c | 10 |
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; |