Go to the documentation of this file.00001 #ifndef _ARCH_ARM_SAM7SE_H_
00002 #define _ARCH_ARM_SAM7SE_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
00044 #define FLASH_BASE 0x100000UL
00045 #define RAM_BASE 0x200000UL
00046
00047 #define TC_BASE 0xFFFA0000
00048 #define UDP_BASE 0xFFFB0000
00049 #define TWI_BASE 0xFFFB8000
00050 #define USART0_BASE 0xFFFC0000
00051 #define USART1_BASE 0xFFFC4000
00052 #define PWMC_BASE 0xFFFCC000
00053 #define SSC_BASE 0xFFFD4000
00054 #define ADC_BASE 0xFFFD8000
00055 #define SPI0_BASE 0xFFFE0000
00057 #define AIC_BASE 0xFFFFF000
00058 #define DBGU_BASE 0xFFFFF200
00059 #define PIOA_BASE 0xFFFFF400
00060 #define PIOB_BASE 0xFFFFF600
00061 #define PIOC_BASE 0xFFFFF800
00062 #define PMC_BASE 0xFFFFFC00
00063 #define RSTC_BASE 0xFFFFFD00
00064 #define RTT_BASE 0xFFFFFD20
00065 #define PIT_BASE 0xFFFFFD30
00066 #define WDT_BASE 0xFFFFFD40
00067 #define VREG_BASE 0xFFFFFD60
00068 #define MC_BASE 0xFFFFFF00
00069 #define EFC0_BASE 0xFFFFFF60
00070 #define EFC1_BASE 0xFFFFFF70
00071 #define EBI_BASE 0xFFFFFF80
00072 #define SMC_BASE 0xFFFFFF90
00073 #define SDRAMC_BASE 0xFFFFFFB0
00074 #define ECC_BASE 0xFFFFFFDC
00076 #define PERIPH_RPR_OFF 0x00000100
00077 #define PERIPH_RCR_OFF 0x00000104
00078 #define PERIPH_TPR_OFF 0x00000108
00079 #define PERIPH_TCR_OFF 0x0000010C
00080 #define PERIPH_RNPR_OFF 0x00000110
00081 #define PERIPH_RNCR_OFF 0x00000114
00082 #define PERIPH_TNPR_OFF 0x00000118
00083 #define PERIPH_TNCR_OFF 0x0000011C
00084 #define PERIPH_PTCR_OFF 0x00000120
00085 #define PERIPH_PTSR_OFF 0x00000124
00087 #define PDC_RXTEN 0x00000001
00088 #define PDC_RXTDIS 0x00000002
00089 #define PDC_TXTEN 0x00000100
00090 #define PDC_TXTDIS 0x00000200
00092 #define EBI_HAS_CSA
00093 #define SMC_HAS_CSR
00094
00095 #define DBGU_HAS_PDC
00096 #define SPI_HAS_PDC
00097 #define SSC_HAS_PDC
00098 #define USART_HAS_PDC
00099 #define USART_HAS_MODE
00100
00101 #define PIO_HAS_MULTIDRIVER
00102 #define PIO_HAS_PULLUP
00103 #define PIO_HAS_PERIPHERALSELECT
00104 #define PIO_HAS_OUTPUTWRITEENABLE
00105
00106 #include <arch/arm/atmel/at91_tc.h>
00107 #include <arch/arm/atmel/at91_us.h>
00108 #include <arch/arm/atmel/at91_dbgu.h>
00109 #include <arch/arm/atmel/at91_spi.h>
00110 #include <arch/arm/atmel/at91_aic.h>
00111 #include <arch/arm/atmel/at91_pio.h>
00112 #include <arch/arm/atmel/at91_pmc.h>
00113 #include <arch/arm/atmel/at91_rstc.h>
00114 #include <arch/arm/atmel/at91_wdt.h>
00115 #include <arch/arm/atmel/at91_pit.h>
00116 #include <arch/arm/atmel/at91_mc.h>
00117 #include <arch/arm/atmel/at91_ebi.h>
00118 #include <arch/arm/atmel/at91_smc.h>
00119 #include <arch/arm/atmel/at91_sdramc.h>
00120 #include <arch/arm/atmel/at91_ssc.h>
00121 #include <arch/arm/atmel/at91_twi.h>
00122 #include <arch/arm/atmel/at91_udp.h>
00123 #include <arch/arm/atmel/at91_adc.h>
00124 #include <arch/arm/atmel/at91_pwmc.h>
00125
00128
00131 #define FIQ_ID 0
00132 #define SYSC_ID 1
00133 #define PIOA_ID 2
00134 #define PIOB_ID 3
00135 #define PIOC_ID 4
00136 #define SPI0_ID 5
00137 #define US0_ID 6
00138 #define US1_ID 7
00139 #define SSC_ID 8
00140 #define TWI_ID 9
00141 #define PWMC_ID 10
00142 #define UDP_ID 11
00143 #define TC0_ID 12
00144 #define TC1_ID 13
00145 #define TC2_ID 14
00146 #define ADC_ID 15
00147
00148 #define IRQ0_ID 29
00149 #define IRQ1_ID 30
00151
00152
00154 #define SPI0_NPCS0_PA11A 11
00155 #define SPI0_NPCS1_PA09B 9
00156 #define SPI0_NPCS1_PA31A 31
00157 #define SPI0_NPCS2_PA10B 10
00158 #define SPI0_NPCS2_PA30B 30
00159 #define SPI0_NPCS3_PA03B 3
00160 #define SPI0_NPCS3_PA05B 5
00161 #define SPI0_NPCS3_PA22B 22
00162 #define SPI0_MISO_PA12A 12
00163 #define SPI0_MOSI_PA13A 13
00164 #define SPI0_SPCK_PA14A 14
00166
00167
00169 #define PA5_RXD0_A 5
00170 #define PA6_TXD0_A 6
00171 #define PB2_SCK0_A 2
00172 #define PA7_RTS0_A 7
00173 #define PA8_CTS0_A 8
00174
00175 #define PA21_RXD1_A 21
00176 #define PA22_TXD1_A 22
00177 #define PA23_SCK1_A 23
00178 #define PA24_RTS1_A 24
00179 #define PC8_RTS1_B 8
00180 #define PA25_CTS1_A 25
00181 #define PA26_DCD1_A 26
00182 #define PA27_DTR1_A 27
00183 #define PC9_DTR1_B 9
00184 #define PA28_DSR1_A 28
00185 #define PA29_RI1_A 29
00186
00190 #define PA12_SPI0_MISO_A 12
00191 #define PA13_SPI0_MOSI_A 13
00192 #define PA14_SPI0_SPCK_A 14
00193 #define PA11_SPI0_NPCS0_A 11
00194 #define PA31_SPI0_NPCS1_A 31
00195 #define PB9_SPI0_NPCS1_A 9
00196 #define PB10_SPI0_NPCS2_A 10
00197 #define PC14_SPI0_NPCS1_B 14
00198 #define PB30_SPI0_NPCS2_A 30
00199 #define PB3_SPI0_NPCS3_A 3
00200 #define PB5_SPI0_NPCS3_A 5
00201 #define PB22_SPI0_NPCS3_A 22
00202
00203 #define SPI0_PINS _BV(PA12_SPI0_MISO_A) | _BV(PA13_SPI0_MOSI_A) | _BV(PA14_SPI0_SPCK_A)
00204 #define SPI0_PIO_BASE PIOA_BASE
00205 #define SPI0_PSR_OFF PIO_ASR_OFF
00206
00207 #define SPI0_CS0_PIN _BV(PA11_SPI0_NPCS0_A)
00208 #define SPI0_CS0_PIO_BASE PIOA_BASE
00209 #define SPI0_CS0_PSR_OFF PIO_ASR_OFF
00210
00211 #ifndef SPI0_CS1_PIN
00212 #define SPI0_CS1_PIN _BV(PA31_SPI0_NPCS1_A)
00213 #define SPI0_CS1_PIO_BASE PIOA_BASE
00214 #define SPI0_CS1_PSR_OFF PIO_ASR_OFF
00215 #endif
00216
00221 #define PA0_A0_B 0
00222 #define PB0_A0_B 0
00223 #define PA1_A1_B 1
00224 #define PB1_A1_B 1
00225 #define PA2_A2_B 2
00226 #define PB2_A2_B 2
00227 #define PA3_A3_B 3
00228 #define PB3_A3_B 3
00229 #define PA4_A4_B 4
00230 #define PB4_A4_B 4
00231 #define PA5_A5_B 5
00232 #define PB5_A5_B 5
00233 #define PA6_A6_B 6
00234 #define PB6_A6_B 6
00235 #define PA7_A7_B 7
00236 #define PB7_A7_B 7
00237 #define PA8_A8_B 8
00238 #define PB8_A8_B 8
00239 #define PA9_A9_B 9
00240 #define PB9_A9_B 9
00241 #define PA10_A10_B 10
00242 #define PB10_A10_B 10
00243 #define PA11_A11_B 11
00244 #define PB11_A11_B 11
00245 #define PA12_A12_B 12
00246 #define PB12_A12_B 12
00247 #define PA13_A13_B 13
00248 #define PB13_A13_B 13
00249 #define PA14_A14_B 14
00250 #define PB14_A14_B 14
00251 #define PA15_A15_B 15
00252 #define PB15_A15_B 15
00253 #define PA16_A16_B 16
00254 #define PB16_A16_B 16
00255 #define PA17_A17_B 17
00256 #define PB17_A17_B 17
00257 #define PC16_A18_A 16
00258 #define PC17_A19_A 17
00259 #define PC18_A20_A 18
00260 #define PC19_A21_A 19
00261 #define PC20_A22_A 20
00262
00263 #define PC0_D0_A 0
00264 #define PC1_D1_A 1
00265 #define PC2_D2_A 2
00266 #define PC3_D3_A 3
00267 #define PC4_D4_A 4
00268 #define PC5_D5_A 5
00269 #define PC6_D6_A 6
00270 #define PC7_D7_A 7
00271 #define PC8_D8_A 8
00272 #define PC9_D9_A 9
00273 #define PC10_D10_A 10
00274 #define PC11_D11_A 11
00275 #define PC12_D12_A 12
00276 #define PC13_D13_A 13
00277 #define PC14_D14_A 14
00278 #define PC15_D15_A 15
00279 #define PB18_D16_B 18
00280 #define PB19_D17_B 19
00281 #define PB20_D18_B 20
00282 #define PB21_D19_B 21
00283 #define PB22_D20_B 22
00284 #define PB23_D21_B 23
00285 #define PB24_D22_B 24
00286 #define PB25_D23_B 25
00287 #define PB26_D24_B 26
00288 #define PB27_D25_B 27
00289 #define PB28_D26_B 28
00290 #define PB29_D27_B 29
00291 #define PB30_D28_B 30
00292 #define PB31_D29_B 31
00293 #define PA30_D30_B 30
00294 #define PA31_D31_B 31
00295
00296 #define PA19_NCS4_B 19
00297 #define PA20_NCS2_B 20
00298 #define PA21_NCS6_B 21
00299 #define PA22_NCS5_B 22
00300 #define PA26_NCS1_B 26
00301 #define PC15_NCS3_B 15
00302 #define PC20_NCS7_B 20
00303 #define PC23_NCS0_B 23
00304
00305 #define PA18_NBS3_B 18
00306 #define PA23_NWR1_B 23
00307 #define PA24_SDA10_B 24
00308 #define PA25_SDCKE_B 25
00309 #define PA27_SDWE_B 27
00310 #define PA28_CAS_B 28
00311 #define PA29_RAS_B 29
00312 #define PC16_NWAIT_B 16
00313 #define PC17_NANDOE_B 17
00314 #define PC18_NANDWE_B 18
00315 #define PC21_NWR0_B 21
00316 #define PC22_NRD_B 22
00317 #define PC23_CFRNW_A 23
00318
00322 #define PA9_DRXD_A 9
00323 #define PA10_DTXD_A 10
00324
00328 #define PA17_TD_A 17
00329 #define PA18_RD_A 18
00330 #define PA16_TK_A 16
00331 #define PA19_RK_A 19
00332 #define PA15_TF_A 15
00333 #define PA20_RF_A 20
00335
00336
00338 #define PA3_TWD_A 3
00339 #define PA4_TWCK_A 4
00341
00342
00344 #define PB0_TIOA0_A 0
00345 #define PB1_TIOB0_A 1
00346 #define PB4_TCLK0_A 4
00347 #define PB15_TIOA1_A 15
00348 #define PB16_TIOB1_A 16
00349 #define PB28_TCLK1_A 28
00350 #define PB26_TIOA2_A 26
00351 #define PB27_TIOB2_A 27
00352 #define PB29_TCLK2_A 29
00353
00357 #define PB6_PCK0_A 6
00358 #define PC10_PCK0_B 10
00359 #define PB17_PCK1_A 17
00360 #define PB21_PCK1_A 21
00361 #define PC11_PCK1_B 11
00362 #define PB18_PCK2_A 18
00363 #define PB31_PCK2_A 31
00364 #define PC12_PCK2_B 12
00365
00369 #define PB19_FIQ_A 19
00370 #define PB20_IRQ0_A 20
00371 #define PA30_IRQ1_A 30
00372
00376 #define PB8_ADTRG_A 8
00378
00379
00381 #define PA0_PWM0_A 0
00382 #define PB11_PWM0_A 11
00383 #define PB23_PWM0_A 23
00384 #define PA1_PWM1_A 1
00385 #define PB12_PWM1_A 12
00386 #define PB24_PWM1_A 24
00387 #define PA2_PWM2_A 2
00388 #define PB13_PWM2_A 13
00389 #define PB25_PWM2_A 25
00390 #define PB7_PWM3_A 7
00391 #define PB14_PWM3_A 14
00392
00394
00396 #endif