xref: /netbsd-src/sys/dev/vme/vmereg.h (revision 95e1ffb15694e54f29f8baaa4232152b703c2a5a)
1*95e1ffb1Schristos /* $NetBSD: vmereg.h,v 1.3 2005/12/11 12:24:07 christos Exp $ */
244418fdfSdrochner 
344418fdfSdrochner /* constants for address modifiers */
444418fdfSdrochner 
544418fdfSdrochner #define VME_AM_ADRSIZEMASK 0x30
6e633976eSmatt #define VME_AM_ADRSIZESHIFT 4
744418fdfSdrochner #define VME_AM_A32 0
844418fdfSdrochner #define VME_AM_A16 0x20
944418fdfSdrochner #define VME_AM_A24 0x30
1044418fdfSdrochner #define VME_AM_USERDEF 0x10 /* user/vendor definable */
1144418fdfSdrochner 
1244418fdfSdrochner #define VME_AM_MBO 8 /* must be set for standard AMs */
1344418fdfSdrochner 
1444418fdfSdrochner #define VME_AM_PRIVMASK 4
1544418fdfSdrochner #define VME_AM_SUPER 4
1644418fdfSdrochner #define VME_AM_USER 0
1744418fdfSdrochner 
1844418fdfSdrochner #define VME_AM_MODEMASK 3
1944418fdfSdrochner #define VME_AM_DATA 1
2044418fdfSdrochner #define VME_AM_PRG 2 /* only with A32, A24 */
2144418fdfSdrochner #define VME_AM_BLT32 3 /* only with A32, A24 */
2244418fdfSdrochner #define VME_AM_BLT64 0 /* new, only with A32, A24 */
2344418fdfSdrochner 
2444418fdfSdrochner #if 0
2544418fdfSdrochner /* some AMs not yet supported by the framework */
2644418fdfSdrochner 
2744418fdfSdrochner /* ??? */
2844418fdfSdrochner VME_AM_A24_xxx 0x32
2944418fdfSdrochner VME_AM_A32_xxx 0x05
3044418fdfSdrochner 
3144418fdfSdrochner /* VME64 extension */
3244418fdfSdrochner VME_AM_A40 0x34,0x35,0x37
3344418fdfSdrochner VME_AM_A64 0x00,0x01,0x03,0x04
3444418fdfSdrochner VME_AM_CR_CSR 0x2f /* GEO */
3544418fdfSdrochner 
3644418fdfSdrochner /* 2eVME extension */
3744418fdfSdrochner VME_AM_2E_6U 0x20
3844418fdfSdrochner VME_AM_2E_3U 0x21
3944418fdfSdrochner #endif
40