usb: ci_udc: fix warnings on 64-bit builds
Subsystems (4)
PATCH 1/1 usb: ci_udc: fix warnings on 64-bit builds
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
--- drivers/usb/gadget/ci_udc.c | 42 +++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-)
drivers/usb/gadget/ci_udc.c +21 -21
@@ -160,8 +160,8 @@ static struct ept_queue_item *ci_get_qtd(int ep_num, int dir_in)static void ci_flush_qh (int ep_num) {struct ept_queue_head *head =ci_get_qh (ep_num,0 ); -const uint32_t start = (uint32_t )head; -const uint32_t end = start +2 *sizeof (*head); +const unsigned long start = (unsigned long )head; +const unsigned long end = start +2 *sizeof (*head);flush_dcache_range (start, end); }
@@ -175,8 +175,8 @@ static void ci_flush_qh(int ep_num)static void ci_invalidate_qh (int ep_num) {struct ept_queue_head *head =ci_get_qh (ep_num,0 ); -uint32_t start = (uint32_t )head; -uint32_t end = start +2 *sizeof (*head); +unsigned long start = (unsigned long )head; +unsigned long end = start +2 *sizeof (*head);invalidate_dcache_range (start, end); }
@@ -190,8 +190,8 @@ static void ci_invalidate_qh(int ep_num)static void ci_flush_qtd (int ep_num) {struct ept_queue_item *item =ci_get_qtd (ep_num,0 ); -const uint32_t start = (uint32_t )item; -const uint32_t end = start +2 *ILIST_ENT_SZ ; +const unsigned long start = (unsigned long )item; +const unsigned long end = start +2 *ILIST_ENT_SZ ;flush_dcache_range (start, end); }
@@ -205,8 +205,8 @@ static void ci_flush_qtd(int ep_num)static void ci_invalidate_qtd (int ep_num) {struct ept_queue_item *item =ci_get_qtd (ep_num,0 ); -const uint32_t start = (uint32_t )item; -const uint32_t end = start +2 *ILIST_ENT_SZ ; +const unsigned long start = (unsigned long )item; +const unsigned long end = start +2 *ILIST_ENT_SZ ;invalidate_dcache_range (start, end); }
@@ -308,8 +308,8 @@ static int ci_ep_disable(struct usb_ep *ep)static int ci_bounce (struct ci_req *ci_req,int in) {struct usb_request *req = &ci_req->req; -uint32_t addr = (uint32_t )req->buf; -uint32_t hwaddr; +unsigned long addr = (unsigned long )req->buf; +unsigned long hwaddr;uint32_t aligned_used_len;/* Input buffer address is not aligned. */
@@ -343,7 +343,7 @@ align:memcpy (ci_req->hw_buf, req->buf, req->length); flush: - hwaddr = (uint32_t )ci_req->hw_buf; + hwaddr = (unsigned long )ci_req->hw_buf; aligned_used_len =roundup (req->length,ARCH_DMA_MINALIGN );flush_dcache_range (hwaddr, hwaddr + aligned_used_len);
@@ -353,8 +353,8 @@ flush:static void ci_debounce (struct ci_req *ci_req,int in) {struct usb_request *req = &ci_req->req; -uint32_t addr = (uint32_t )req->buf; -uint32_t hwaddr = (uint32_t )ci_req->hw_buf; +unsigned long addr = (unsigned long )req->buf; +unsigned long hwaddr = (unsigned long )ci_req->hw_buf;uint32_t aligned_used_len;if (in)
@@ -388,13 +388,13 @@ static void ci_ep_submit_next_request(struct ci_ep *ci_ep) len = ci_req->req.length; item->info =INFO_BYTES (len) |INFO_ACTIVE ; - item->page0 = (uint32_t )ci_req->hw_buf; - item->page1 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x1000 ; - item->page2 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x2000 ; - item->page3 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x3000 ; - item->page4 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x4000 ; + item->page0 = (unsigned long )ci_req->hw_buf; + item->page1 = ((unsigned long )ci_req->hw_buf &0xfffff000 ) +0x1000 ; + item->page2 = ((unsigned long )ci_req->hw_buf &0xfffff000 ) +0x2000 ; + item->page3 = ((unsigned long )ci_req->hw_buf &0xfffff000 ) +0x3000 ; + item->page4 = ((unsigned long )ci_req->hw_buf &0xfffff000 ) +0x4000 ; - head->next = (unsigned ) item; + head->next = (unsigned long )item; head->info =0 ;/*
@@ -422,7 +422,7 @@ static void ci_ep_submit_next_request(struct ci_ep *ci_ep)* can use the other to transmit the extra zero-length packet. */ struct ept_queue_item *other_item =ci_get_qtd (num,0 ); - item->next = (unsigned )other_item; + item->next = (unsigned long )other_item; item = other_item; item->info =INFO_ACTIVE ; }
@@ -772,7 +772,7 @@ static int ci_pullup(struct usb_gadget *gadget, int is_on)writel (USBCMD_ITC (MICRO_8FRAME ) |USBCMD_RST , &udc->usbcmd);udelay (200 ); -writel ((unsigned )controller.epts, &udc->epinitaddr); +writel ((unsigned long )controller.epts, &udc->epinitaddr);/* select DEVICE mode */ writel (USBMODE_DEVICE , &udc->usbmode);
Signature · 1 line
2.1.0
PATCH 1/1 mv_i2c: fix warnings on 64-bit builds
Change addresses to unsigned long to be compatible with 64-bit builds.
--- drivers/i2c/mv_i2c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/i2c/mv_i2c.c +1 -1
@@ -73,7 +73,7 @@ static void i2c_board_init(struct mv_i2c *base) }#ifdef CONFIG_I2C_MULTI_BUS -static u32 i2c_regs[CONFIG_MV_I2C_NUM ] =CONFIG_MV_I2C_REG ; +static unsigned long i2c_regs[CONFIG_MV_I2C_NUM ] =CONFIG_MV_I2C_REG ;static unsigned int bus_initialized[CONFIG_MV_I2C_NUM ];static unsigned int current_bus;
Signature · 1 line
2.1.0
PATCH 1/1 mv_i2c: fix warnings on 64-bit builds
Hello Rob,
Am 17.03.2015 21:46, schrieb Rob Herring:
Quoted 7 lines
Change addresses to unsigned long to be compatible with 64-bit builds.
Signed-off-by Rob Herring <[email protected]>Cc Heiko Schocher <[email protected]>--- drivers/i2c/mv_i2c.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
Thanks!
applied to u-boot-i2c.git
bye,
Heiko
Signature · 2 lines
DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
PATCH 1/1 ehci-hcd: fix warnings on 64-bit builds
In reply to Rob HerringChange addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
--- drivers/usb/host/ehci-hcd.c | 82 ++++++++++++++++++++++----------------------- 1 file changed, 41 insertions(+), 41 deletions(-)
drivers/usb/host/ehci-hcd.c +41 -41
@@ -45,7 +45,7 @@static struct ehci_ctrl ehcic[CONFIG_USB_MAX_CONTROLLER_COUNT ];#define ALIGN_END_ADDR (type, ptr, size) \ - ((uint32_t)(ptr) + roundup((size) * sizeof(type), USB_DMA_MINALIGN)) + ((unsigned long)(ptr) + roundup((size) * sizeof(type), USB_DMA_MINALIGN)) static struct descriptor { struct usb_hub_descriptor hub;
@@ -223,7 +223,7 @@ static int ehci_shutdown(struct ehci_ctrl *ctrl)static int ehci_td_buffer (struct qTD *td,void *buf,size_t sz) {uint32_t delta, next; -uint32_t addr = (uint32_t )buf; +uint32_t addr = (unsigned long )buf;int idx;if (addr !=ALIGN (addr,ARCH_DMA_MINALIGN ))
@@ -245,7 +245,7 @@ static int ehci_td_buffer(struct qTD *td, void *buf, size_t sz) }if (idx ==QT_BUFFER_CNT ) { -printf ("out of buffer pointers (%u bytes left)\n" , sz); +printf ("out of buffer pointers (%zu bytes left)\n" , sz);return -1 ; }
@@ -354,7 +354,7 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer,* qTD transfer size will be one page shorter, and the first qTD * data buffer of each transfer will be page-unaligned. */ -if ((uint32_t )buffer & (PKT_ALIGN -1 )) +if ((unsigned long )buffer & (PKT_ALIGN -1 )) xfr_sz--;/* Convert the qTD transfer size to bytes. */ xfr_sz *=EHCI_PAGE_SIZE ;
@@ -394,7 +394,7 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer,* qh_overlay.qt_next ...... 13-10 H * - qh_overlay.qt_altnext */ - qh->qh_link =cpu_to_hc32 ((uint32_t )&ctrl->qh_list |QH_LINK_TYPE_QH ); + qh->qh_link =cpu_to_hc32 ((unsigned long )&ctrl->qh_list |QH_LINK_TYPE_QH ); c = (dev->speed !=USB_SPEED_HIGH ) && !usb_pipeendpoint (pipe); maxpacket =usb_maxpacket (dev, pipe); endpt = QH_ENDPT1_RL(8) | QH_ENDPT1_C(c) |
@@ -434,7 +434,7 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer, goto fail; }/* Update previous qTD! */ - *tdp =cpu_to_hc32 ((uint32_t )&qtd[qtd_counter]); + *tdp =cpu_to_hc32 ((unsigned long )&qtd[qtd_counter]); tdp = &qtd[qtd_counter++].qt_next; toggle =1 ; }
@@ -454,7 +454,7 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer,* portion of the first page before the buffer start * offset within that page is unusable. */ - xfr_bytes -= (uint32_t )buf_ptr & (EHCI_PAGE_SIZE -1 ); + xfr_bytes -= (unsigned long )buf_ptr & (EHCI_PAGE_SIZE -1 );/* * In order to keep each packet within a qTD transfer, * align the qTD transfer size to PKT_ALIGN.
@@ -493,7 +493,7 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer, goto fail; }/* Update previous qTD! */ - *tdp =cpu_to_hc32 ((uint32_t )&qtd[qtd_counter]); + *tdp =cpu_to_hc32 ((unsigned long )&qtd[qtd_counter]); tdp = &qtd[qtd_counter++].qt_next;/* * Data toggle has to be adjusted since the qTD transfer
@@ -524,21 +524,21 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer,QT_TOKEN_STATUS (QT_TOKEN_STATUS_ACTIVE ); qtd[qtd_counter].qt_token =cpu_to_hc32 (token);/* Update previous qTD! */ - *tdp =cpu_to_hc32 ((uint32_t )&qtd[qtd_counter]); + *tdp =cpu_to_hc32 ((unsigned long )&qtd[qtd_counter]); tdp = &qtd[qtd_counter++].qt_next; } - ctrl->qh_list.qh_link =cpu_to_hc32 ((uint32_t )qh |QH_LINK_TYPE_QH ); + ctrl->qh_list.qh_link =cpu_to_hc32 ((unsigned long )qh |QH_LINK_TYPE_QH );/* Flush dcache */ -flush_dcache_range ((uint32_t )&ctrl->qh_list, +flush_dcache_range ((unsigned long )&ctrl->qh_list, ALIGN_END_ADDR(struct QH, &ctrl->qh_list, 1)); - flush_dcache_range((uint32_t)qh, ALIGN_END_ADDR(struct QH, qh, 1)); -flush_dcache_range ((uint32_t )qtd, + flush_dcache_range((unsigned long)qh, ALIGN_END_ADDR(struct QH, qh, 1)); +flush_dcache_range ((unsigned long )qtd, ALIGN_END_ADDR(struct qTD, qtd, qtd_count));/* Set async. queue head pointer. */ -ehci_writel (&ctrl->hcor->or_asynclistaddr, (uint32_t )&ctrl->qh_list); +ehci_writel (&ctrl->hcor->or_asynclistaddr, (unsigned long )&ctrl->qh_list); usbsts =ehci_readl (&ctrl->hcor->or_usbsts);ehci_writel (&ctrl->hcor->or_usbsts, (usbsts &0x3f ));
@@ -561,11 +561,11 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer, timeout =USB_TIMEOUT_MS (pipe); do { /* Invalidate dcache */ - invalidate_dcache_range((uint32_t)&ctrl->qh_list, + invalidate_dcache_range((unsigned long)&ctrl->qh_list, ALIGN_END_ADDR(struct QH, &ctrl->qh_list, 1)); - invalidate_dcache_range((uint32_t)qh, + invalidate_dcache_range((unsigned long)qh, ALIGN_END_ADDR(struct QH, qh, 1)); - invalidate_dcache_range((uint32_t)qtd, + invalidate_dcache_range((unsigned long)qtd, ALIGN_END_ADDR(struct qTD, qtd, qtd_count)); token = hc32_to_cpu(vtd->qt_token);
@@ -583,8 +583,8 @@ ehci_submit_async(struct usb_device *dev, unsigned long pipe, void *buffer,* dangerous operation, it's responsibility of the calling * code to make sure enough space is reserved. */ -invalidate_dcache_range ((uint32_t )buffer, -ALIGN ((uint32_t )buffer + length,ARCH_DMA_MINALIGN )); +invalidate_dcache_range ((unsigned long )buffer, +ALIGN ((unsigned long )buffer + length,ARCH_DMA_MINALIGN ));/* Check that the TD processing happened */ if (QT_TOKEN_GET_STATUS (token) &QT_TOKEN_STATUS_ACTIVE )
@@ -968,7 +968,7 @@ int usb_lowlevel_init(int index, enum usb_init_type init, void **controller)/* Set head of reclaim list */ memset (qh_list,0 ,sizeof (*qh_list)); - qh_list->qh_link =cpu_to_hc32 ((uint32_t )qh_list |QH_LINK_TYPE_QH ); + qh_list->qh_link =cpu_to_hc32 ((unsigned long )qh_list |QH_LINK_TYPE_QH ); qh_list->qh_endpt1 =cpu_to_hc32 (QH_ENDPT1_H (1 ) |QH_ENDPT1_EPS (USB_SPEED_HIGH )); qh_list->qh_overlay.qt_next =cpu_to_hc32 (QT_NEXT_TERMINATE );
@@ -976,11 +976,11 @@ int usb_lowlevel_init(int index, enum usb_init_type init, void **controller) qh_list->qh_overlay.qt_token =cpu_to_hc32 (QT_TOKEN_STATUS (QT_TOKEN_STATUS_HALTED )); -flush_dcache_range ((uint32_t )qh_list, +flush_dcache_range ((unsigned long )qh_list, ALIGN_END_ADDR(struct QH, qh_list, 1));/* Set async. queue head pointer. */ -ehci_writel (&ehcic[index].hcor->or_asynclistaddr, (uint32_t )qh_list); +ehci_writel (&ehcic[index].hcor->or_asynclistaddr, (unsigned long )qh_list);/* * Set up periodic list
@@ -993,7 +993,7 @@ int usb_lowlevel_init(int index, enum usb_init_type init, void **controller) periodic->qh_overlay.qt_next =cpu_to_hc32 (QT_NEXT_TERMINATE ); periodic->qh_overlay.qt_altnext =cpu_to_hc32 (QT_NEXT_TERMINATE ); -flush_dcache_range ((uint32_t )periodic, +flush_dcache_range ((unsigned long )periodic, ALIGN_END_ADDR(struct QH, periodic, 1));/*
@@ -1011,17 +1011,17 @@ int usb_lowlevel_init(int index, enum usb_init_type init, void **controller)if (!ehcic[index].periodic_list)return -ENOMEM ;for (i =0 ; i <1024 ; i++) { - ehcic[index].periodic_list[i] =cpu_to_hc32 ((uint32_t )periodic + ehcic[index].periodic_list[i] =cpu_to_hc32 ((unsigned long )periodic |QH_LINK_TYPE_QH ); } -flush_dcache_range ((uint32_t )ehcic[index].periodic_list, +flush_dcache_range ((unsigned long )ehcic[index].periodic_list,ALIGN_END_ADDR (uint32_t, ehcic[index].periodic_list,1024 ));/* Set periodic list base address */ ehci_writel (&ehcic[index].hcor->or_periodiclistbase, - (uint32_t )ehcic[index].periodic_list); + (unsigned long )ehcic[index].periodic_list); reg =ehci_readl (&ehcic[index].hccr->cr_hcsparams); descriptor.hub.bNbrPorts =HCS_N_PORTS (reg);
@@ -1103,7 +1103,7 @@ struct int_queue {struct qTD *tds; }; -#define NEXT_QH (qh) (struct QH *)(hc32_to_cpu((qh)->qh_link) & ~0x1f) +#define NEXT_QH (qh) (struct QH *)((unsigned long)hc32_to_cpu((qh)->qh_link) & ~0x1f)static int enable_periodic (struct ehci_ctrl *ctrl)
@@ -1214,11 +1214,11 @@ create_int_queue(struct usb_device *dev, unsigned long pipe, int queuesize,struct qTD *td = result->tds + i;void **buf = &qh->buffer; - qh->qh_link =cpu_to_hc32 ((uint32_t )(qh+1 ) |QH_LINK_TYPE_QH ); + qh->qh_link =cpu_to_hc32 ((unsigned long )(qh+1 ) |QH_LINK_TYPE_QH );if (i == queuesize -1 ) qh->qh_link =cpu_to_hc32 (QH_LINK_TERMINATE ); - qh->qh_overlay.qt_next =cpu_to_hc32 ((uint32_t )td); + qh->qh_overlay.qt_next =cpu_to_hc32 ((unsigned long )td); qh->qh_overlay.qt_altnext =cpu_to_hc32 (QT_NEXT_TERMINATE ); qh->qh_endpt1 = cpu_to_hc32((0 << 28) | /* No NAK reload (ehci 4.9) */
@@ -1244,7 +1244,7 @@ create_int_queue(struct usb_device *dev, unsigned long pipe, int queuesize, ((usb_pipein (pipe) ?1 :0 ) <<8 ) |/* IN/OUT token */ 0x80); /* active */ td->qt_buffer[0 ] = -cpu_to_hc32 ((uint32_t )buffer + i * elementsize); +cpu_to_hc32 ((unsigned long )buffer + i * elementsize); td->qt_buffer[1 ] =cpu_to_hc32 ((td->qt_buffer[0 ] +0x1000 ) & ~0xfff ); td->qt_buffer[2] =
@@ -1257,13 +1257,13 @@ create_int_queue(struct usb_device *dev, unsigned long pipe, int queuesize, *buf = buffer + i * elementsize; } -flush_dcache_range ((uint32_t )buffer, +flush_dcache_range ((unsigned long )buffer,ALIGN_END_ADDR (char, buffer, queuesize * elementsize)); -flush_dcache_range ((uint32_t )result->first, +flush_dcache_range ((unsigned long )result->first, ALIGN_END_ADDR(struct QH, result->first, queuesize)); -flush_dcache_range ((uint32_t )result->tds, +flush_dcache_range ((unsigned long )result->tds, ALIGN_END_ADDR(struct qTD, result->tds, queuesize));
@@ -1277,11 +1277,11 @@ create_int_queue(struct usb_device *dev, unsigned long pipe, int queuesize,/* hook up to periodic list */ struct QH *list = &ctrl->periodic_queue; result->last->qh_link = list->qh_link; - list->qh_link =cpu_to_hc32 ((uint32_t )result->first |QH_LINK_TYPE_QH ); + list->qh_link =cpu_to_hc32 ((unsigned long )result->first |QH_LINK_TYPE_QH ); -flush_dcache_range ((uint32_t )result->last, +flush_dcache_range ((unsigned long )result->last, ALIGN_END_ADDR(struct QH, result->last, 1)); -flush_dcache_range ((uint32_t )list, +flush_dcache_range ((unsigned long )list, ALIGN_END_ADDR(struct QH, list, 1));if (enable_periodic (ctrl) <0 ) {
@@ -1316,7 +1316,7 @@ void *poll_int_queue(struct usb_device *dev, struct int_queue *queue) }/* still active */ cur_td = &queue->tds[queue->current - queue->first]; -invalidate_dcache_range ((uint32_t )cur_td, +invalidate_dcache_range ((unsigned long )cur_td, ALIGN_END_ADDR(struct qTD, cur_td, 1));if (QT_TOKEN_GET_STATUS (hc32_to_cpu (cur_td->qt_token)) &QT_TOKEN_STATUS_ACTIVE ) {
@@ -1329,7 +1329,7 @@ void *poll_int_queue(struct usb_device *dev, struct int_queue *queue)else queue->current =NULL ; -invalidate_dcache_range ((uint32_t )cur->buffer, +invalidate_dcache_range ((unsigned long )cur->buffer,ALIGN_END_ADDR (char, cur->buffer, queue->elementsize));
@@ -1359,7 +1359,7 @@ destroy_int_queue(struct usb_device *dev, struct int_queue *queue)if (NEXT_QH (cur) == queue->first) {debug ("found candidate. removing from chain\n" ); cur->qh_link = queue->last->qh_link; -flush_dcache_range ((uint32_t )cur, +flush_dcache_range ((unsigned long )cur, ALIGN_END_ADDR(struct QH, cur, 1)); result =0 ;break ;
@@ -1411,8 +1411,8 @@ submit_int_msg(struct usb_device *dev, unsigned long pipe, void *buffer, }if (backbuffer != buffer) { -debug ("got wrong buffer back (%x instead of %x)\n" , - (uint32_t )backbuffer, (uint32_t )buffer); +debug ("got wrong buffer back (%p instead of %p)\n" , + backbuffer, buffer);return -EINVAL ; }
Signature · 1 line
2.1.0
PATCH 1/1 ehci-hcd: fix warnings on 64-bit builds
Quoted 9 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc Marek Vasut <[email protected]>--- drivers/usb/host/ehci-hcd.c | 82++++++++++++++++++++++----------------------- 1 file changed, 41 insertions(+), 41 deletions(-)
Hi,
I will handle those patches in a couple of days. I got similar fix from Thierry today in a patchset, this is the subject:
[PATCH 11/13] usb: ehci-hcd: Build warning fixes for 64-bit
I would obviously like to pick Rob's one, since it came first, but I will need to check if they're really the same. Moreover, shall I pick this for the current release or is it OK to apply for the next one ?
Thanks !
Best regards,
Marek Vasut
PATCH 1/1 ehci-hcd: fix warnings on 64-bit builds
Quoted 13 lines · Marek Vasut
Quoted 9 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc Marek Vasut <[email protected]>--- drivers/usb/host/ehci-hcd.c | 82++++++++++++++++++++++----------------------- 1 file changed, 41 insertions(+), 41 deletions(-)
Hi,
Quoted 8 lines
I will handle those patches in a couple of days. I got similar fix from Thierry today in a patchset, this is the subject:
[PATCH 11/13] usb: ehci-hcd: Build warning fixes for 64-bitI would obviously like to pick Rob's one, since it came first, but I will need to check if they're really the same. Moreover, shall I pick this for the current release or is it OK to apply for the next one ?
For me, after the release is fine. Thierry may feel otherwise.
Rob
PATCH 1/1 ehci-hcd: fix warnings on 64-bit builds
Quoted 20 lines · Rob Herring
Quoted 19 lines · Marek Vasut
Quoted 11 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc Marek Vasut <[email protected]>---
drivers/usb/host/ehci-hcd.c | 82++++++++++++++++++++++----------------------- 1 file changed, 41 insertions(+), 41 deletions(-)
Hi,
I will handle those patches in a couple of days. I got similar fix from Thierry today in a patchset, this is the subject:
[PATCH 11/13] usb: ehci-hcd: Build warning fixes for 64-bit
Quoted 6 lines
Quoted 4 lines
I would obviously like to pick Rob's one, since it came first, but I will need to check if they're really the same. Moreover, shall I pick this for the current release or is it OK to apply for the next one ?
For me, after the release is fine. Thierry may feel otherwise.
I'm fine either way, so Thierry, what is your feeling please ?
Best regards,
Marek Vasut
PATCH 1/1 ehci-hcd: fix warnings on 64-bit builds
Quoted 21 lines · Marek Vasut
Quoted 20 lines · Rob Herring
Quoted 19 lines · Marek Vasut
Quoted 11 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc Marek Vasut <[email protected]>---
drivers/usb/host/ehci-hcd.c | 82++++++++++++++++++++++----------------------- 1 file changed, 41 insertions(+), 41 deletions(-)
Hi,
I will handle those patches in a couple of days. I got similar fix from Thierry today in a patchset, this is the subject:
[PATCH 11/13] usb: ehci-hcd: Build warning fixes for 64-bit
Quoted 8 lines
Quoted 6 lines
Quoted 4 lines
I would obviously like to pick Rob's one, since it came first, but I will need to check if they're really the same. Moreover, shall I pick this for the current release or is it OK to apply for the next one ?
For me, after the release is fine. Thierry may feel otherwise.
I'm fine either way, so Thierry, what is your feeling please ?
This is preliminary work for board support that's not going to make it in time for the release, so there's no hurry.
Thierry
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 819 bytes
Desc: not available
URL: <http://lists.denx.de/pipermail/u-boot/attachments/20150325/900aa381/attachment.sig>
PATCH 1/1 ehci-hcd: fix warnings on 64-bit builds
Quoted 28 lines · Thierry Reding
Quoted 27 lines · Marek Vasut
Quoted 26 lines · Rob Herring
Quoted 24 lines · Marek Vasut
Quoted 4 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Quoted 8 lines
Signed-off-by Rob Herring <[email protected]>Cc Marek Vasut <[email protected]>---
drivers/usb/host/ehci-hcd.c | 82++++++++++++++++++++++----------------------- 1 file changed, 41 insertions(+), 41 deletions(-)
Hi,
I will handle those patches in a couple of days. I got similar fix from Thierry today in a patchset, this is the subject:
[PATCH 11/13] usb: ehci-hcd: Build warning fixes for 64-bitI would obviously like to pick Rob's one, since it came first, but I will need to check if they're really the same. Moreover, shall I pick this for the current release or is it OK to apply for the next one ?
Quoted 6 lines
Quoted 3 lines
Quoted 1 line
For me, after the release is fine. Thierry may feel otherwise.
I'm fine either way, so Thierry, what is your feeling please ?
This is preliminary work for board support that's not going to make it in time for the release, so there's no hurry.
I picked the stuff from Rob into -next, so this will appear in the next version of U-Boot. Please let me know if I did the wrong call here, and possible even send me a patch which fixes the deficiencies.
Thanks again!
Best regards,
Marek Vasut
Marek Vasut
AppliedPATCH 1/1 ehci-hcd: fix warnings on 64-bit builds
In reply to Rob HerringQuoted 5 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc Marek Vasut <[email protected]>
Applied, thanks!
Best regards,
Marek Vasut
PATCH 1/1 sdhci: fix warnings on 64-bit builds
In reply to Rob HerringChange addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
--- drivers/mmc/sdhci.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)
drivers/mmc/sdhci.c +3 -3
@@ -194,13 +194,13 @@ static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd,#ifdef CONFIG_MMC_SDMA if (data->flags ==MMC_DATA_READ ) - start_addr = (unsigned int )data->dest; + start_addr = (unsigned long )data->dest;else - start_addr = (unsigned int )data->src; + start_addr = (unsigned long )data->src;if ((host->quirks &SDHCI_QUIRK_32BIT_DMA_ADDR ) && (start_addr &0x7 ) !=0x0 ) { is_aligned =0 ; - start_addr = (unsigned int )aligned_buffer; + start_addr = (unsigned long )aligned_buffer;if (data->flags !=MMC_DATA_READ )memcpy (aligned_buffer, data->src, trans_bytes); }
Signature · 1 line
2.1.0
Pantelis Antoniou
AppliedPATCH 1/1 sdhci: fix warnings on 64-bit builds
Hi Rob,
Quoted 35 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc Pantelis Antoniou <[email protected]>---
drivers/mmc/sdhci.c| 6 +++---1 file changed, 3 insertions(+), 3 deletions(-)drivers/mmc/sdhci.c +3
-3@@ -194,13 +194,13 @@ static int sdhci_send_command(struct mmc *mmc, struct mmc_cmd *cmd,#ifdef CONFIG_MMC_SDMA if (data->flags ==MMC_DATA_READ ) - start_addr = (unsigned int )data->dest; + start_addr = (unsigned long )data->dest;else - start_addr = (unsigned int )data->src; + start_addr = (unsigned long )data->src;if ((host->quirks &SDHCI_QUIRK_32BIT_DMA_ADDR ) && (start_addr &0x7 ) !=0x0 ) { is_aligned =0 ; - start_addr = (unsigned int )aligned_buffer; + start_addr = (unsigned long )aligned_buffer;if (data->flags !=MMC_DATA_READ )memcpy (aligned_buffer, data->src, trans_bytes); }Signature · 1 line
2.1.0
Thanks, applied.
? Pantelis
PATCH 1/1 mv_sdhci: fix warnings on 64-bit builds
In reply to Rob HerringChange addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
--- drivers/mmc/mv_sdhci.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
drivers/mmc/mv_sdhci.c +2 -2
@@ -12,7 +12,7 @@ static struct sdhci_ops mv_ops;static inline void mv_sdhci_writeb (struct sdhci_host *host,u8 val,int reg) {struct mmc *mmc = host->mmc; -u32 ata = (u32 )host->ioaddr +SD_CE_ATA_2 ; +u32 ata = (unsigned long )host->ioaddr +SD_CE_ATA_2 ;if (!IS_SD (mmc) && reg ==SDHCI_HOST_CONTROL ) {if (mmc->bus_width ==8 )
@@ -30,7 +30,7 @@ static inline void mv_sdhci_writeb(struct sdhci_host *host, u8 val, int reg)#endif /* CONFIG_MMC_SDHCI_IO_ACCESSORS */ static char *MVSDH_NAME ="mv_sdh" ; -int mv_sdh_init (u32 regbase,u32 max_clk,u32 min_clk,u32 quirks) +int mv_sdh_init (unsigned long regbase,u32 max_clk,u32 min_clk,u32 quirks) {struct sdhci_host *host =NULL ; host = (struct sdhci_host *)malloc (sizeof (struct sdhci_host ));
Signature · 1 line
2.1.0
Pantelis Antoniou
AppliedPATCH 1/1 mv_sdhci: fix warnings on 64-bit builds
Hi Rob,
Quoted 36 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc Pantelis Antoniou <[email protected]>---
drivers/mmc/mv_sdhci.c| 4 ++--1 file changed, 2 insertions(+), 2 deletions(-)drivers/mmc/mv_sdhci.c +2
-2@@ -12,7 +12,7 @@ static struct sdhci_ops mv_ops;static inline void mv_sdhci_writeb (struct sdhci_host *host,u8 val,int reg) {struct mmc *mmc = host->mmc; -u32 ata = (u32 )host->ioaddr +SD_CE_ATA_2 ; +u32 ata = (unsigned long )host->ioaddr +SD_CE_ATA_2 ;if (!IS_SD (mmc) && reg ==SDHCI_HOST_CONTROL ) {if (mmc->bus_width ==8 )@@ -30,7 +30,7 @@ static inline void mv_sdhci_writeb(struct sdhci_host *host, u8 val, int reg)#endif /* CONFIG_MMC_SDHCI_IO_ACCESSORS */ static char *MVSDH_NAME ="mv_sdh" ; -int mv_sdh_init (u32 regbase,u32 max_clk,u32 min_clk,u32 quirks) +int mv_sdh_init (unsigned long regbase,u32 max_clk,u32 min_clk,u32 quirks) {struct sdhci_host *host =NULL ; host = (struct sdhci_host *)malloc (sizeof (struct sdhci_host ));Signature · 1 line
2.1.0
Thanks, applied.
? Pantelis
PATCH 1/1 usb: ci_udc: fix warnings on 64-bit builds
In reply to Rob HerringHi Rob,
Quoted 130 lines
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc "?ukasz Majewski" <[email protected]>Cc Marek Vasut <[email protected]>--- drivers/usb/gadget/ci_udc.c | 42+++++++++++++++++++++--------------------- 1 file changed, 21 insertions(+), 21 deletions(-)
drivers/usb/gadget/ci_udc.c +16
-18@@ -160,8 +160,8 @@ static struct ept_queue_item *ci_get_qtd(int ep_num, int dir_in) static void ci_flush_qh(int ep_num) {struct ept_queue_head *head =ci_get_qh (ep_num,0 ); -const uint32_t start = (uint32_t )head; -const uint32_t end = start +2 *sizeof (*head); +const unsigned long start = (unsigned long )head; +const unsigned long end = start +2 *sizeof (*head);flush_dcache_range (start, end); }@@ -175,8 +175,8 @@ static void ci_flush_qh(int ep_num)static void ci_invalidate_qh (int ep_num) {struct ept_queue_head *head =ci_get_qh (ep_num,0 ); -uint32_t start = (uint32_t )head; -uint32_t end = start +2 *sizeof (*head); +unsigned long start = (unsigned long )head; +unsigned long end = start +2 *sizeof (*head);invalidate_dcache_range (start, end); }@@ -190,8 +190,8 @@ static void ci_invalidate_qh(int ep_num)static void ci_flush_qtd (int ep_num) {struct ept_queue_item *item =ci_get_qtd (ep_num,0 ); -const uint32_t start = (uint32_t )item; -const uint32_t end = start +2 *ILIST_ENT_SZ ; +const unsigned long start = (unsigned long )item; +const unsigned long end = start +2 *ILIST_ENT_SZ ;flush_dcache_range (start, end); }@@ -205,8 +205,8 @@ static void ci_flush_qtd(int ep_num)static void ci_invalidate_qtd (int ep_num) {struct ept_queue_item *item =ci_get_qtd (ep_num,0 ); -const uint32_t start = (uint32_t )item; -const uint32_t end = start +2 *ILIST_ENT_SZ ; +const unsigned long start = (unsigned long )item; +const unsigned long end = start +2 *ILIST_ENT_SZ ;invalidate_dcache_range (start, end); }@@ -308,8 +308,8 @@ static int ci_ep_disable(struct usb_ep *ep)static int ci_bounce (struct ci_req *ci_req,int in) {struct usb_request *req = &ci_req->req; -uint32_t addr = (uint32_t )req->buf; -uint32_t hwaddr; +unsigned long addr = (unsigned long )req->buf; +unsigned long hwaddr;uint32_t aligned_used_len;/* Input buffer address is not aligned. */ @@ -343,7 +343,7 @@ align:memcpy (ci_req->hw_buf, req->buf, req->length); flush: - hwaddr = (uint32_t )ci_req->hw_buf; + hwaddr = (unsigned long )ci_req->hw_buf; aligned_used_len =roundup (req->length,ARCH_DMA_MINALIGN );flush_dcache_range (hwaddr, hwaddr + aligned_used_len);@@ -353,8 +353,8 @@ flush:static void ci_debounce (struct ci_req *ci_req,int in) {struct usb_request *req = &ci_req->req; -uint32_t addr = (uint32_t )req->buf; -uint32_t hwaddr = (uint32_t )ci_req->hw_buf; +unsigned long addr = (unsigned long )req->buf; +unsigned long hwaddr = (unsigned long )ci_req->hw_buf;uint32_t aligned_used_len;if (in)@@ -388,13 +388,13 @@ static void ci_ep_submit_next_request(struct ci_ep *ci_ep) len = ci_req->req.length; item->info =INFO_BYTES (len) |INFO_ACTIVE ; - item->page0 = (uint32_t )ci_req->hw_buf; - item->page1 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x1000 ; - item->page2 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x2000 ; - item->page3 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x3000 ; - item->page4 = ((uint32_t )ci_req->hw_buf &0xfffff000 ) +0x4000 ; + item->page0 = (unsigned long )ci_req->hw_buf; + item->page1 = ((unsigned long )ci_req->hw_buf &0xfffff000 ) +0x1000 ; + item->page2 = ((unsigned long)ci_req->hw_buf & 0xfffff000) +
0x2000;drivers/usb/gadget/ci_udc.c +1
-0+ item->page3 = ((unsigned long)ci_req->hw_buf & 0xfffff000) +
0x3000;drivers/usb/gadget/ci_udc.c +1
-0+ item->page4 = ((unsigned long)ci_req->hw_buf & 0xfffff000) +
0x4000;drivers/usb/gadget/ci_udc.c +1
-1- head->next = (unsigned ) item; + head->next = (unsigned long )item; head->info =0 ;/* @@ -422,7 +422,7 @@ static void ci_ep_submit_next_request(struct ci_ep *ci_ep) * can use the other to transmit the extrazero-length packet. */
structept_queue_item*other_item= ci_get_qtd(num,
0);drivers/usb/gadget/ci_udc.c +1
-1- item->next = (unsigned )other_item; + item->next = (unsigned long )other_item; item = other_item; item->info =INFO_ACTIVE ; }
drivers/usb/gadget/ci_udc.c static int ci_pullup(struct usb_gadget *gadget, · line 778
Quoted 8 lines
drivers/usb/gadget/ci_udc.c +1
-1@@ -772,7 +772,7 @@ static int ci_pullup(struct usb_gadget *gadget, int is_on) writel(USBCMD_ITC(MICRO_8FRAME) | USBCMD_RST, &udc->usbcmd); udelay(200); -writel ((unsigned )controller.epts, &udc->epinitaddr); +writel ((unsigned long )controller.epts, &udc->epinitaddr);/* select DEVICE mode */ writel (USBMODE_DEVICE , &udc->usbmode);
Signature · 5 lines
Best regards, Lukasz Majewski Samsung R&D Institute Poland (SRPOL) | Linux Platform Group
Marek Vasut
AppliedPATCH 1/1 usb: ci_udc: fix warnings on 64-bit builds
In reply to Rob HerringQuoted 6 lines · Rob Herring
Change addresses to unsigned long to be compatible with 64-bit builds. Regardless of fixing warnings, the device is still only 32-bit capable.
Signed-off-by Rob Herring <[email protected]>Cc "?ukasz Majewski" <[email protected]>Cc Marek Vasut <[email protected]>
Applied, thanks!
Best regards,
Marek Vasut