Subject: Re: [PATCH v2.6.26] gianfar: Determine TBIPA value dynamically

From: Scott Wood <[email-masked]>
Date: Fri, 11 Apr 2008 14:11:44 -0500

Andy Fleming wrote:
> I tried.  Technically, we can.  But the issue is that struct gfar 
> *enet_regs->gfar_mii_regs is declared:
> 
> u8 gfar_mii_regs[24];
> 
> I could not find any sequence of castings that made the warning go away 
> about casting that to a struct gfar_mii __iomem *.  And that includes 
> mucking around with the declaration of gfar_mii_regs.  I vaguely recall 
> determining that you couldn't make it a struct, because you can't 
> guarantee gcc won't much with the size of the struct.  Or something.  

We use structs for registers all over the place.  The only time GCC 
should mess with struct layout is if fields aren't aligned as required 
by the ABI (and in that case, use the packed attribute).

-Scott