Subject: Re: [PATCH] powerpc/usb: use unsigned long to type cast an address of ioremap

From: Tabi Timur-B04825 <[email-masked]>
Date: Thu, 3 Nov 2011 12:07:19 +0000

David Laight wrote:
>> >  usb_sys_regs =3D (void *)dr_regs + USB_DR_SYS_OFFSET;

> But that is invalid C.

What's invalid about it?  I haven't tried compiling this specific line of=20
code, but I've done stuff like it in the past many times.

Are you talking about adding an integer to a void pointer?  If so, then=20
that's something that gcc supports and that the kernel uses all over the=20
place.  A char* is incorrect because a char could be more than one byte,=20
in theory.

--=20
Timur Tabi
Linux kernel developer at Freescale=