[U-Boot] [PATCH] ci_udc: fix 64-bit compile warnings

Lukasz Majewski l.majewski at samsung.com
Thu Jul 23 09:00:53 CEST 2015


Hi Marek,

> From: Stephen Warren <swarren at nvidia.com>
> 
> This is the same as f72d8320b605 "usb: ci_udc: fix warnings on 64-bit
> builds", but more.
> 
> Signed-off-by: Stephen Warren <swarren at nvidia.com>
> ---
>  drivers/usb/gadget/ci_udc.c | 19 ++++++++++---------
>  1 file changed, 10 insertions(+), 9 deletions(-)
> 
> diff --git a/drivers/usb/gadget/ci_udc.c b/drivers/usb/gadget/ci_udc.c
> index aadff42a9cdc..993be315a8cf 100644
> --- a/drivers/usb/gadget/ci_udc.c
> +++ b/drivers/usb/gadget/ci_udc.c
> @@ -221,8 +221,8 @@ static void ci_flush_qtd(int ep_num)
>   */
>  static void ci_flush_td(struct ept_queue_item *td)
>  {
> -	const uint32_t  start = (uint32_t)td;
> -	const uint32_t end = (uint32_t) td + ILIST_ENT_SZ;
> +	const unsigned long start = (unsigned long)td;
> +	const unsigned long end = (unsigned long)td + ILIST_ENT_SZ;
>  	flush_dcache_range(start, end);
>  }
>  
> @@ -249,8 +249,8 @@ static void ci_invalidate_qtd(int ep_num)
>   */
>  static void ci_invalidate_td(struct ept_queue_item *td)
>  {
> -	const uint32_t start = (uint32_t)td;
> -	const uint32_t end = start + ILIST_ENT_SZ;
> +	const unsigned long start = (unsigned long)td;
> +	const unsigned long end = start + ILIST_ENT_SZ;
>  	invalidate_dcache_range(start, end);
>  }
>  
> @@ -459,7 +459,7 @@ static void ci_ep_submit_next_request(struct
> ci_ep *ci_ep) if (len) {
>  			qtd = (struct ept_queue_item *)
>  			       memalign(ILIST_ALIGN, ILIST_ENT_SZ);
> -			dtd->next = (uint32_t)qtd;
> +			dtd->next = (unsigned long)qtd;
>  			dtd = qtd;
>  			memset(dtd, 0, ILIST_ENT_SZ);
>  		}
> @@ -503,10 +503,10 @@ static void ci_ep_submit_next_request(struct
> ci_ep *ci_ep) 
>  	ci_flush_qtd(num);
>  
> -	item = (struct ept_queue_item *)head->next;
> +	item = (struct ept_queue_item *)(unsigned long)head->next;
>  	while (item->next != TERMINATE) {
> -		ci_flush_td((struct ept_queue_item *)item->next);
> -		item = (struct ept_queue_item *)item->next;
> +		ci_flush_td((struct ept_queue_item *)(unsigned
> long)item->next);
> +		item = (struct ept_queue_item *)(unsigned
> long)item->next; }
>  
>  	DBG("ept%d %s queue len %x, req %p, buffer %p\n",
> @@ -594,7 +594,8 @@ static void handle_ep_complete(struct ci_ep
> *ci_ep) printf("EP%d/%s FAIL info=%x pg0=%x\n",
>  			       num, in ? "in" : "out", item->info,
> item->page0); if (j != ci_req->dtd_count - 1)
> -			next_td = (struct ept_queue_item
> *)item->next;
> +			next_td = (struct ept_queue_item *)(unsigned
> long)
> +				item->next;
>  		if (j != 0)
>  			free(item);
>  	}

Should I take the patch to -dfu tree?

-- 
Best regards,

Lukasz Majewski

Samsung R&D Institute Poland (SRPOL) | Linux Platform Group


More information about the U-Boot mailing list