瀏覽代碼

powerpc/usb: fix type cast for address of ioremap to compatible with 64-bit

Below are codes for accessing usb sysif_regs in driver:

usb_sys_regs = (struct usb_sys_interface *)
	((u32)dr_regs + USB_DR_SYS_OFFSET);

these codes work in 32-bit, but in 64-bit, use u32 to type cast the address
of ioremap is not right, and accessing members of 'usb_sys_regs' will cause
call trace, so use (void *) for both 32-bit and 64-bit.

Signed-off-by: Shaohui Xie <Shaohui.Xie@freescale.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
Shaohui Xie 13 年之前
父節點
當前提交
8981d76a2c
共有 1 個文件被更改,包括 1 次插入2 次删除
  1. 1 2
      drivers/usb/gadget/fsl_udc_core.c

+ 1 - 2
drivers/usb/gadget/fsl_udc_core.c

@@ -2480,8 +2480,7 @@ static int __init fsl_udc_probe(struct platform_device *pdev)
 
 
 #ifndef CONFIG_ARCH_MXC
 #ifndef CONFIG_ARCH_MXC
 	if (pdata->have_sysif_regs)
 	if (pdata->have_sysif_regs)
-		usb_sys_regs = (struct usb_sys_interface *)
-				((u32)dr_regs + USB_DR_SYS_OFFSET);
+		usb_sys_regs = (void *)dr_regs + USB_DR_SYS_OFFSET;
 #endif
 #endif
 
 
 	/* Initialize USB clocks */
 	/* Initialize USB clocks */