usb: dwc3: Fix warnings on 64-bit builds
authorMichal Simek <michal.simek@xilinx.com>
Fri, 30 Oct 2015 15:24:06 +0000 (16:24 +0100)
committerMarek Vasut <marex@denx.de>
Tue, 3 Nov 2015 16:29:54 +0000 (17:29 +0100)
Change aritmentics to use 64bit types to be compatible with 64bit
builds.

Signed-off-by: Michal Simek <michal.simek@xilinx.com>
drivers/usb/dwc3/core.c
drivers/usb/dwc3/ep0.c
drivers/usb/dwc3/gadget.c
drivers/usb/dwc3/io.h

index ab3c94e51275764df2e8b965329de604cc3d32e7..0ae3de5c27b9dcd0611dafc42f9ada8a18be89d0 100644 (file)
@@ -281,7 +281,7 @@ static int dwc3_setup_scratch_buffers(struct dwc3 *dwc)
        return 0;
 
 err1:
-       dma_unmap_single((void *)dwc->scratch_addr, dwc->nr_scratch *
+       dma_unmap_single((void *)(uintptr_t)dwc->scratch_addr, dwc->nr_scratch *
                         DWC3_SCRATCHBUF_SIZE, DMA_BIDIRECTIONAL);
 
 err0:
@@ -296,7 +296,7 @@ static void dwc3_free_scratch_buffers(struct dwc3 *dwc)
        if (!dwc->nr_scratch)
                return;
 
-       dma_unmap_single((void *)dwc->scratch_addr, dwc->nr_scratch *
+       dma_unmap_single((void *)(uintptr_t)dwc->scratch_addr, dwc->nr_scratch *
                         DWC3_SCRATCHBUF_SIZE, DMA_BIDIRECTIONAL);
        kfree(dwc->scratchbuf);
 }
@@ -629,7 +629,8 @@ int dwc3_uboot_init(struct dwc3_device *dwc3_dev)
        dwc = PTR_ALIGN(mem, DWC3_ALIGN_MASK + 1);
        dwc->mem = mem;
 
-       dwc->regs       = (int *)(dwc3_dev->base + DWC3_GLOBALS_REGS_START);
+       dwc->regs = (void *)(uintptr_t)(dwc3_dev->base +
+                                       DWC3_GLOBALS_REGS_START);
 
        /* default to highest possible threshold */
        lpm_nyet_threshold = 0xff;
index aba614fb4e984011db4b24f09bd3404ded5770fb..12b133f93e178ee7b3d0c19017a2464c46642fbf 100644 (file)
@@ -81,8 +81,8 @@ static int dwc3_ep0_start_trans(struct dwc3 *dwc, u8 epnum, dma_addr_t buf_dma,
                trb->ctrl |= (DWC3_TRB_CTRL_IOC
                                | DWC3_TRB_CTRL_LST);
 
-       dwc3_flush_cache((int)buf_dma, len);
-       dwc3_flush_cache((int)trb, sizeof(*trb));
+       dwc3_flush_cache((long)buf_dma, len);
+       dwc3_flush_cache((long)trb, sizeof(*trb));
 
        if (chain)
                return 0;
@@ -790,7 +790,7 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc,
        if (!r)
                return;
 
-       dwc3_flush_cache((int)trb, sizeof(*trb));
+       dwc3_flush_cache((long)trb, sizeof(*trb));
 
        status = DWC3_TRB_SIZE_TRBSTS(trb->size);
        if (status == DWC3_TRBSTS_SETUP_PENDING) {
@@ -821,7 +821,7 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc,
                        ur->actual += transferred;
 
                        trb++;
-                       dwc3_flush_cache((int)trb, sizeof(*trb));
+                       dwc3_flush_cache((long)trb, sizeof(*trb));
                        length = trb->size & DWC3_TRB_SIZE_MASK;
 
                        ep0->free_slot = 0;
@@ -831,7 +831,7 @@ static void dwc3_ep0_complete_data(struct dwc3 *dwc,
                                        maxp);
                transferred = min_t(u32, ur->length - transferred,
                                    transfer_size - length);
-               dwc3_flush_cache((int)dwc->ep0_bounce, DWC3_EP0_BOUNCE_SIZE);
+               dwc3_flush_cache((long)dwc->ep0_bounce, DWC3_EP0_BOUNCE_SIZE);
                memcpy(buf, dwc->ep0_bounce, transferred);
        } else {
                transferred = ur->length - length;
index f3d649a5ee2f85d66bef3c4f5b1d2a5f55a26a6d..8ff949d241f6e9c13c13432d3a54db1bdfba44f2 100644 (file)
@@ -244,7 +244,7 @@ void dwc3_gadget_giveback(struct dwc3_ep *dep, struct dwc3_request *req,
 
        list_del(&req->list);
        req->trb = NULL;
-       dwc3_flush_cache((int)req->request.dma, req->request.length);
+       dwc3_flush_cache((long)req->request.dma, req->request.length);
 
        if (req->request.status == -EINPROGRESS)
                req->request.status = status;
@@ -771,8 +771,8 @@ static void dwc3_prepare_one_trb(struct dwc3_ep *dep,
 
        trb->ctrl |= DWC3_TRB_CTRL_HWO;
 
-       dwc3_flush_cache((int)dma, length);
-       dwc3_flush_cache((int)trb, sizeof(*trb));
+       dwc3_flush_cache((long)dma, length);
+       dwc3_flush_cache((long)trb, sizeof(*trb));
 }
 
 /*
@@ -1769,7 +1769,7 @@ static int dwc3_cleanup_done_reqs(struct dwc3 *dwc, struct dwc3_ep *dep,
        slot %= DWC3_TRB_NUM;
        trb = &dep->trb_pool[slot];
 
-       dwc3_flush_cache((int)trb, sizeof(*trb));
+       dwc3_flush_cache((long)trb, sizeof(*trb));
        __dwc3_cleanup_done_trbs(dwc, dep, req, trb, event, status);
        dwc3_gadget_giveback(dep, req, status);
 
@@ -2670,7 +2670,7 @@ void dwc3_gadget_uboot_handle_interrupt(struct dwc3 *dwc)
 
                for (i = 0; i < dwc->num_event_buffers; i++) {
                        evt = dwc->ev_buffs[i];
-                       dwc3_flush_cache((int)evt->buf, evt->length);
+                       dwc3_flush_cache((long)evt->buf, evt->length);
                }
 
                dwc3_thread_interrupt(0, dwc);
index 5042a2419369416db4abe8b6dca2a7b66c0885f9..0d9fa220e922ed9009b8a6aca5cf3d9ffe383c0e 100644 (file)
@@ -23,7 +23,7 @@
 #define        CACHELINE_SIZE          CONFIG_SYS_CACHELINE_SIZE
 static inline u32 dwc3_readl(void __iomem *base, u32 offset)
 {
-       u32 offs = offset - DWC3_GLOBALS_REGS_START;
+       unsigned long offs = offset - DWC3_GLOBALS_REGS_START;
        u32 value;
 
        /*
@@ -38,7 +38,7 @@ static inline u32 dwc3_readl(void __iomem *base, u32 offset)
 
 static inline void dwc3_writel(void __iomem *base, u32 offset, u32 value)
 {
-       u32 offs = offset - DWC3_GLOBALS_REGS_START;
+       unsigned long offs = offset - DWC3_GLOBALS_REGS_START;
 
        /*
         * We requested the mem region starting from the Globals address