~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

Linux Cross Reference
Linux/drivers/net/dgrs_asstruct.h

Version: ~ [ 2.4.0 ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

  1 /*
  2  *      For declaring structures shared with assembly routines
  3  *
  4  *      $Id: asstruct.h,v 1.1.1.1 1994/10/23 05:08:32 rick Exp $
  5  */
  6 
  7 #if ASSEMBLER
  8 
  9 #       define MO(t,a)          (a)
 10 #       define VMO(t,a)         (a)
 11 
 12 #       define  BEGIN_STRUCT(x) _Off=0
 13 #       define  S1A(t,x,n)      _Off=(_Off+0)&~0; x=_Off; _Off=_Off+(1*n)
 14 #       define  S2A(t,x,n)      _Off=(_Off+1)&~1; x=_Off; _Off=_Off+(2*n)
 15 #       define  S4A(t,x,n)      _Off=(_Off+3)&~3; x=_Off; _Off=_Off+(4*n)
 16 #       define  WORD(x)         _Off=(_Off+3)&~3; x=_Off; _Off=_Off+4
 17 #       define  WORDA(x,n)      _Off=(_Off+3)&~3; x=_Off; _Off=_Off+(4*n)
 18 #       define  VWORD(x)        _Off=(_Off+3)&~3; x=_Off; _Off=_Off+4
 19 #       define  S1(t,x)         _Off=(_Off+0)&~0; x=_Off; _Off=_Off+1
 20 #       define  S2(t,x)         _Off=(_Off+1)&~1; x=_Off; _Off=_Off+2
 21 #       define  S4(t,x)         _Off=(_Off+3)&~3; x=_Off; _Off=_Off+4
 22 #       define  END_STRUCT(x)   _Off=(_Off+3)&~3; x=_Off 
 23 
 24 #else   /* C */
 25 
 26 #define VMO(t,a)        (*(volatile t *)(a))
 27 
 28 #       define BEGIN_STRUCT(x) struct x {
 29 #       define S1(t,x)         t x ;
 30 #       define S1A(t,x,n)      t x[n] ;
 31 #       define S2(t,x)         t x ;
 32 #       define S2A(t,x,n)      t x[n] ;
 33 #       define S4(t,x)         t x ;
 34 #       define S4A(t,x,n)      t x[n] ;
 35 #       define END_STRUCT(x)   } ;
 36 
 37 #endif
 38 

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~ [ freetext search ] ~ [ file search ] ~

This page was automatically generated by the LXR engine.
Visit the LXR main site for more information.