Subject: Re: [patch 3/3] Add tsi108 On Chip Ethernet device driver support

From: Roland Dreier <[email-masked]>
Date: Tue, 12 Sep 2006 07:33:07 -0700

> +struct tsi108_prv_data {
 > +	volatile u32 regs;	/* Base of normal regs */
 > +	volatile u32 phyregs;	/* Base of register bank used for PHY access */

Why volatile?  This looks really wrong here.

 > +	data->regs = (u32)ioremap(einfo->regs, 0x400);	/*FIX ME */
 > +	data->phyregs = (u32)ioremap(einfo->phyregs, 0x400); 	/*FIX ME */

What needs to be fixed here?  And why are you casting the result of
ioremap to u32?  Shouldn't you keep the normal return value?

 - R.