On Mon, 28 Jan 2019 05:20:03 -0800
Christoph Hellwig <h...@infradead.org> wrote:

> On Thu, Jan 24, 2019 at 06:47:23PM +0100, Thomas Bogendoerfer wrote:
> >  #ifndef __ASSEMBLY__
> > +/* Address translation entry for mapped pci32 accesses */
> > +union bridge_ate {
> > +   u64     ent;
> > +   struct ate_s {
> > +           u64     rmf:16;
> > +           u64     addr:36;
> > +           u64     targ:4;
> > +           u64     reserved:3;
> > +           u64     barrier:1;
> > +           u64     prefetch:1;
> > +           u64     precise:1;
> > +           u64     coherent:1;
> > +           u64     valid:1;
> > +   } field;
> 
> Note that we generally try to avoid using bitfields for hardware
> descriptions and instead use masking/shifting, possibly hidden in
> macros.  The portability argument for that doesn't really apply
> here as the code is obviously MIPS/big endian specific, but I think
> it generally is a good example and more readable as well.

I totally agreed. I only moved the original defintion around while cleaning
up the header file. Right now there is no code using it. Should I remove it
and access macros as soon there is a need for it ?

Thomas.

-- 
SUSE Linux GmbH
GF: Felix Imendörffer, Jane Smithard, Graham Norton
HRB 21284 (AG Nürnberg)

Reply via email to