00001 #ifndef _ARCH_ARM_AT91_SSC_H_
00002 #define _ARCH_ARM_AT91_SSC_H_
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00028
00029
00030
00031
00032
00033
00034
00035
00063
00066 #define SSC_CR_OFF 0x00000000
00067 #define SSC_CR (SSC_BASE + SSC_CR_OFF)
00068 #define SSC_RXEN 0x00000001
00069 #define SSC_RXDIS 0x00000002
00070 #define SSC_TXEN 0x00000100
00071 #define SSC_TXDIS 0x00000200
00072 #define SSC_SWRST 0x00008000
00074
00075
00077 #define SSC_CMR_OFF 0x00000004
00078 #define SSC_CMR (SSC_BASE + SSC_CMR_OFF)
00079 #define SSC_DIV_LSB 0
00080 #define SSC_DIV 0x00000FFF
00082
00083
00085 #define SSC_RCMR_OFF 0x00000010
00086 #define SSC_RCMR (SSC_BASE + SSC_RCMR_OFF)
00087 #define SSC_TCMR_OFF 0x00000018
00088 #define SSC_TCMR (SSC_BASE + SSC_TCMR_OFF)
00090 #define SSC_CKS 0x00000003
00091 #define SSC_CKS_DIV 0x00000000
00092 #define SSC_CKS_RK 0x00000001
00093 #define SSC_CKS_TK 0x00000002
00094 #define SSC_CKO 0x0000001C
00095 #define SSC_CKO_NONE 0x00000000
00096 #define SSC_CKO_CONT 0x00000004
00097 #define SSC_CKO_TRAN 0x00000008
00098 #define SSC_CKI 0x00000020
00099 #define SSC_CKG 0x000000C0
00100 #define SSC_CKG_NONE 0x00000000
00101 #define SSC_CKG_RFL 0x00000040
00102 #define SSC_CKG_RFH 0x00000080
00103 #define SSC_START 0x00000F00
00104 #define SSC_START_CONT 0x00000000
00105 #define SSC_START_TX 0x00000100
00106 #define SSC_START_LOW_RF 0x00000200
00107 #define SSC_START_HIGH_RF 0x00000300
00108 #define SSC_START_FALL_RF 0x00000400
00109 #define SSC_START_RISE_RF 0x00000500
00110 #define SSC_START_LEVEL_RF 0x00000600
00111 #define SSC_START_EDGE_RF 0x00000700
00112 #define SSC_START_COMP0 0x00000800
00113 #define SSC_STOP 0x00001000
00114 #define SSC_STTDLY 0x00FF0000
00115 #define SSC_STTDLY_LSB 16
00116 #define SSC_PERIOD 0xFF000000
00117 #define SSC_PERIOD_LSB 24
00119
00120
00122 #define SSC_RFMR_OFF 0x00000014
00123 #define SSC_RFMR (SSC_BASE + SSC_RFMR_OFF)
00124 #define SSC_TFMR_OFF 0x0000001C
00125 #define SSC_TFMR (SSC_BASE + SSC_TFMR_OFF)
00127 #define SSC_DATLEN 0x0000001F
00128 #define SSC_DATLEN_LSB 0
00129 #define SSC_LOOP 0x00000020
00130 #define SSC_MSBF 0x00000080
00131 #define SSC_DATNB 0x00000F00
00132 #define SSC_DATNB_LSB 8
00133 #define SSC_FSLEN 0x000F0000
00134 #define SSC_FSLEN_LSB 16
00135 #define SSC_FSOS 0x00700000
00136 #define SSC_FSOS_NONE 0x00000000
00137 #define SSC_FSOS_NEGATIVE 0x00100000
00138 #define SSC_FSOS_POSITIVE 0x00200000
00139 #define SSC_FSOS_LOW 0x00300000
00140 #define SSC_FSOS_HIGH 0x00400000
00141 #define SSC_FSOS_TOGGLE 0x00500000
00142 #define SSC_FSEDGE 0x01000000
00144
00145
00147 #define SSC_RHR_OFF 0x00000020
00148 #define SSC_RHR (SSC_BASE + SSC_RHR_OFF)
00150
00151
00153 #define SSC_THR_OFF 0x00000024
00154 #define SSC_THR (SSC_BASE + SSC_THR_OFF)
00156
00157
00159 #define SSC_RSHR_OFF 0x00000030
00160 #define SSC_RSHR (SSC_BASE + SSC_RSHR_OFF)
00162
00163
00165 #define SSC_TSHR_OFF 0x00000034
00166 #define SSC_TSHR (SSC_BASE + SSC_TSHR_OFF)
00168
00169
00171 #define SSC_RC0R_OFF 0x00000038
00172 #define SSC_RC0R (SSC_BASE + SSC_RC0R_OFF)
00174
00175
00177 #define SSC_RC1R_OFF 0x0000003C
00178 #define SSC_RC1R (SSC_BASE + SSC_RC1R_OFF)
00180
00181
00183 #define SSC_SR_OFF 0x00000040
00184 #define SSC_SR (SSC_BASE + SSC_SR_OFF)
00185 #define SSC_TXRDY 0x00000001
00186 #define SSC_TXEMPTY 0x00000002
00187 #define SSC_ENDTX 0x00000004
00188 #define SSC_TXBUFE 0x00000008
00189 #define SSC_RXRDY 0x00000010
00190 #define SSC_OVRUN 0x00000020
00191 #define SSC_ENDRX 0x00000040
00192 #define SSC_RXBUFF 0x00000080
00193 #define SSC_CP0 0x00000100
00194 #define SSC_CP1 0x00000200
00195 #define SSC_TXSYN 0x00000400
00196 #define SSC_RXSYN 0x00000800
00197 #define SSC_TXENA 0x00010000
00198 #define SSC_RXENA 0x00020000
00200
00201
00203 #define SSC_IER_OFF 0x00000044
00204 #define SSC_IER (SSC_BASE + SSC_IER_OFF)
00206
00207
00209 #define SSC_IDR_OFF 0x00000048
00210 #define SSC_IDR (SSC_BASE + SSC_IDR_OFF)
00212
00213
00215 #define SSC_IMR_OFF 0x0000004C
00216 #define SSC_IMR (SSC_BASE + SSC_IMR_OFF)
00218
00219 #if defined(SSC_HAS_PDC)
00220
00223 #define SSC_RPR (SSC_BASE + PERIPH_RPR_OFF)
00225
00226
00228 #define SSC_RCR (SSC_BASE + PERIPH_RCR_OFF)
00230
00231
00233 #define SSC_TPR (SSC_BASE + PERIPH_TPR_OFF)
00235
00236
00238 #define SSC_TCR (SSC_BASE + PERIPH_TCR_OFF)
00240
00241
00243 #define SSC_RNPR (SSC_BASE + PERIPH_RNPR_OFF)
00245
00246
00248 #define SSC_RNCR (SSC_BASE + PERIPH_RNCR_OFF)
00250
00251
00253 #define SSC_TNPR (SSC_BASE + PERIPH_TNPR_OFF)
00255
00256
00258 #define SSC_TNCR (SSC_BASE + PERIPH_TNCR_OFF)
00260
00261
00263 #define SSC_PTCR (SSC_BASE + PERIPH_PTCR_OFF)
00265
00266
00268 #define SSC_PTSR (SSC_BASE + PERIPH_PTSR_OFF)
00270
00271 #endif
00272
00276 #endif