1 //-----------------------------------------------------------------------------
2 // This code is licensed to you under the terms of the GNU GPL, version 2 or,
3 // at your option, any later version. See the LICENSE.txt file for the text of
5 //-----------------------------------------------------------------------------
6 // GPIO pin mapping for the Proxmark3
7 //-----------------------------------------------------------------------------
9 #ifndef __CONFIG_GPIO_H
10 #define __CONFIG_GPIO_H
12 #define GPIO_LED_A AT91C_PIO_PA0
13 #define GPIO_PA1 AT91C_PIO_PA1
14 #define GPIO_LED_D AT91C_PIO_PA2
15 #define GPIO_NVDD_ON AT91C_PIO_PA3
16 #define GPIO_FPGA_NINIT AT91C_PIO_PA4
17 #define GPIO_PA5 AT91C_PIO_PA5
18 #define GPIO_PCK0 AT91C_PA6_PCK0
19 #define GPIO_LRST AT91C_PIO_PA7
20 #define GPIO_LED_B AT91C_PIO_PA8
21 #define GPIO_LED_C AT91C_PIO_PA9
23 // defines for flash mem, or rdv40 ?
24 // flashmem hooked on PA10
25 //#define GPIO_NCS2 AT91C_PIO_PA1
26 #define GPIO_NCS2 AT91C_PA10_NPCS2
27 #define GPIO_NCS0 AT91C_PA11_NPCS0
29 #define GPIO_MISO AT91C_PA12_MISO
30 #define GPIO_MOSI AT91C_PA13_MOSI
31 #define GPIO_SPCK AT91C_PA14_SPCK
32 #define GPIO_SSC_FRAME AT91C_PA15_TF
33 #define GPIO_SSC_CLK AT91C_PA16_TK
34 #define GPIO_SSC_DOUT AT91C_PA17_TD
35 #define GPIO_SSC_DIN AT91C_PA18_RD
36 #define GPIO_MUXSEL_HIPKD AT91C_PIO_PA19
37 #define GPIO_MUXSEL_LOPKD AT91C_PIO_PA20
39 // RDV40 has no HIRAW/LORAW, its used for FPC
40 #define GPIO_MUXSEL_HIRAW AT91C_PIO_PA21
41 #define GPIO_MUXSEL_LORAW AT91C_PIO_PA22
43 #define GPIO_BUTTON AT91C_PIO_PA23
44 #define GPIO_USB_PU AT91C_PIO_PA24
45 #define GPIO_RELAY AT91C_PIO_PA25
46 #define GPIO_FPGA_ON AT91C_PIO_PA26
47 #define GPIO_FPGA_DONE AT91C_PIO_PA27
48 #define GPIO_FPGA_NPROGRAM AT91C_PIO_PA28
49 #define GPIO_FPGA_CCLK AT91C_PIO_PA29
50 #define GPIO_FPGA_DIN AT91C_PIO_PA30
51 #define GPIO_FPGA_DOUT AT91C_PIO_PA31