diff options
author | Till Straumann <strauman@slac.stanford.edu> | 2006-01-27 00:35:27 +0000 |
---|---|---|
committer | Till Straumann <strauman@slac.stanford.edu> | 2006-01-27 00:35:27 +0000 |
commit | 6f10ffee3a6e5edc4c3a5bdbdc994f634000de33 (patch) | |
tree | 178b908cf6264bfc324b8eda887312e100d8a441 /c/src/lib/libbsp/shared | |
parent | 2006-01-23 Joel Sherrill <joel@OARcorp.com> (diff) | |
download | rtems-6f10ffee3a6e5edc4c3a5bdbdc994f634000de33.tar.bz2 |
2006-01-26 Till Straumann <strauman@slac.stanford.edu>
* vmeUniverse/vmeTsi148.c, vmeUniverse/vmeUniverse.c,
vmeUniverse/vmeUniverse.h, vmeUniverse/vme_amd_defs.h:
Added 2F address modifier for VME64 CSR access.
Diffstat (limited to 'c/src/lib/libbsp/shared')
-rw-r--r-- | c/src/lib/libbsp/shared/ChangeLog | 5 | ||||
-rw-r--r-- | c/src/lib/libbsp/shared/vmeUniverse/vmeTsi148.c | 6 | ||||
-rw-r--r-- | c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.c | 15 | ||||
-rw-r--r-- | c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.h | 3 | ||||
-rw-r--r-- | c/src/lib/libbsp/shared/vmeUniverse/vme_am_defs.h | 3 |
5 files changed, 29 insertions, 3 deletions
diff --git a/c/src/lib/libbsp/shared/ChangeLog b/c/src/lib/libbsp/shared/ChangeLog index 37701444ae..d5ec7c8b4f 100644 --- a/c/src/lib/libbsp/shared/ChangeLog +++ b/c/src/lib/libbsp/shared/ChangeLog @@ -1,3 +1,8 @@ +2006-01-26 Till Straumann <strauman@slac.stanford.edu> + * vmeUniverse/vmeTsi148.c, vmeUniverse/vmeUniverse.c, + vmeUniverse/vmeUniverse.h, vmeUniverse/vme_amd_defs.h: + Added 2F address modifier for VME64 CSR access. + 2006-01-11 Till Straumann <strauman@slac.stanford.edu> * vmeUniverse/vmeTsi148.c, vmeUniverse/vmeTsi148.h, vmeUniverse/vmeUniverse.c, vmeUniverse/vmeUniverse.h, diff --git a/c/src/lib/libbsp/shared/vmeUniverse/vmeTsi148.c b/c/src/lib/libbsp/shared/vmeUniverse/vmeTsi148.c index a2520a06a3..d0ab3df4b3 100644 --- a/c/src/lib/libbsp/shared/vmeUniverse/vmeTsi148.c +++ b/c/src/lib/libbsp/shared/vmeUniverse/vmeTsi148.c @@ -63,6 +63,7 @@ # define TSI_OTAT_ADMODE_A24 1 # define TSI_OTAT_ADMODE_A32 2 # define TSI_OTAT_ADMODE_A64 4 +# define TSI_OTAT_ADMODE_CSR 5 # define TSI_OTAT_ADMODE_USR1 8 # define TSI_OTAT_ADMODE_USR2 9 # define TSI_OTAT_ADMODE_USR3 0xa @@ -401,6 +402,10 @@ unsigned long tm, mask; mode |= TSI_OTAT_ADMODE_A16; break; + case VME_AM_CSR: + mode |= TSI_OTAT_ADMODE_CSR; + break; + case 0: /* disable the port alltogether */ break; @@ -789,6 +794,7 @@ unsigned long long start, limit, offst; case TSI_OTAT_ADMODE_A24: uprintf(f,"A24"); break; case TSI_OTAT_ADMODE_A32: uprintf(f,"A32"); break; case TSI_OTAT_ADMODE_A64: uprintf(f,"A64"); break; + case TSI_OTAT_ADMODE_CSR: uprintf(f,"CSR"); break; default: uprintf(f,"A??"); break; } diff --git a/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.c b/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.c index 888d71da13..87f17d91e8 100644 --- a/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.c +++ b/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.c @@ -25,6 +25,7 @@ #define UNIV_CTL_VAS16 (0x00000000) #define UNIV_CTL_VAS24 (0x00010000) #define UNIV_CTL_VAS32 (0x00020000) +#define UNIV_MCTL_VASCSR (0x00050000) #define UNIV_CTL_VAS (0x00070000) #define UNIV_MCTL_EN (0x80000000) @@ -347,6 +348,12 @@ unsigned long mode=0; mode |= UNIV_CTL_VAS16; break; + case VME_AM_CSR: + if ( !ismaster ) + return -1; + mode |= UNIV_MCTL_VASCSR; + break; + case 0: /* disable the port alltogether */ break; @@ -543,9 +550,11 @@ showUniversePort( } switch (cntrl & UNIV_CTL_VAS) { - case UNIV_CTL_VAS16: uprintf(f,"A16, "); break; - case UNIV_CTL_VAS24: uprintf(f,"A24, "); break; - case UNIV_CTL_VAS32: uprintf(f,"A32, "); break; + case UNIV_CTL_VAS16: uprintf(f,"A16, "); break; + case UNIV_CTL_VAS24: uprintf(f,"A24, "); break; + case UNIV_CTL_VAS32: uprintf(f,"A32, "); break; + case UNIV_MCTL_VASCSR: if ( ismaster ) { uprintf(f,"CSR, "); break; } + /* else fallthru */ default: uprintf(f,"A??, "); break; } diff --git a/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.h b/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.h index 42283a95da..5e40135e3a 100644 --- a/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.h +++ b/c/src/lib/libbsp/shared/vmeUniverse/vmeUniverse.h @@ -52,6 +52,9 @@ #ifndef VME_AM_EXT_USR_DATA #define VME_AM_EXT_USR_DATA 0x09 #endif +#ifndef VME_AM_CSR +#define VME_AM_CSR 0x2f +#endif #ifndef VME_AM_SUP_SHORT_IO #define VME_AM_SUP_SHORT_IO 0x2d #endif diff --git a/c/src/lib/libbsp/shared/vmeUniverse/vme_am_defs.h b/c/src/lib/libbsp/shared/vmeUniverse/vme_am_defs.h index 7d467cd0e0..34fde7625e 100644 --- a/c/src/lib/libbsp/shared/vmeUniverse/vme_am_defs.h +++ b/c/src/lib/libbsp/shared/vmeUniverse/vme_am_defs.h @@ -39,6 +39,9 @@ #ifndef VME_AM_EXT_USR_DATA #define VME_AM_EXT_USR_DATA 0x09 #endif +#ifndef VME_AM_CSR +#define VME_AM_CSR 0x2f +#endif #ifndef VME_AM_SUP_SHORT_IO #define VME_AM_SUP_SHORT_IO 0x2d #endif |