xref: /rk3399_rockchip-uboot/board/overo/overo.h (revision fe5d488fbef192188bcddb8774154bd5527e468b)
1127f9ae5SJean-Christophe PLAGNIOL-VILLARD /*
2127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * (C) Copyright 2008
3127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * Steve Sakoman <steve@sakoman.com>
4127f9ae5SJean-Christophe PLAGNIOL-VILLARD  *
51a459660SWolfgang Denk  * SPDX-License-Identifier:	GPL-2.0+
6127f9ae5SJean-Christophe PLAGNIOL-VILLARD  */
7127f9ae5SJean-Christophe PLAGNIOL-VILLARD #ifndef _OVERO_H_
8127f9ae5SJean-Christophe PLAGNIOL-VILLARD #define _OVERO_H_
9127f9ae5SJean-Christophe PLAGNIOL-VILLARD 
10127f9ae5SJean-Christophe PLAGNIOL-VILLARD const omap3_sysinfo sysinfo = {
11127f9ae5SJean-Christophe PLAGNIOL-VILLARD 	DDR_STACKED,
12127f9ae5SJean-Christophe PLAGNIOL-VILLARD 	"Gumstix Overo board",
13127f9ae5SJean-Christophe PLAGNIOL-VILLARD #if defined(CONFIG_ENV_IS_IN_ONENAND)
14127f9ae5SJean-Christophe PLAGNIOL-VILLARD 	"OneNAND",
15127f9ae5SJean-Christophe PLAGNIOL-VILLARD #else
16127f9ae5SJean-Christophe PLAGNIOL-VILLARD 	"NAND",
17127f9ae5SJean-Christophe PLAGNIOL-VILLARD #endif
18127f9ae5SJean-Christophe PLAGNIOL-VILLARD };
19127f9ae5SJean-Christophe PLAGNIOL-VILLARD 
20*fe5d488fSArun Bharadwaj int get_board_revision(void);
21*fe5d488fSArun Bharadwaj 
22137703b8SAndreas Müller /* overo revisions */
23137703b8SAndreas Müller #define REVISION_0	0x0
24137703b8SAndreas Müller #define REVISION_1	0x1
25137703b8SAndreas Müller #define REVISION_2	0x2
2649720a4bSSteve Sakoman #define REVISION_3	0x3
27be4cc457SAsh Charles #define REVISION_4	0x4
28137703b8SAndreas Müller 
29127f9ae5SJean-Christophe PLAGNIOL-VILLARD /*
30127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * IEN  - Input Enable
31127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * IDIS - Input Disable
32127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * PTD  - Pull type Down
33127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * PTU  - Pull type Up
34127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * DIS  - Pull type selection is inactive
35127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * EN   - Pull type selection is active
36127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * M0   - Mode 0
37127f9ae5SJean-Christophe PLAGNIOL-VILLARD  * The commented string gives the final mux configuration for that pin
38127f9ae5SJean-Christophe PLAGNIOL-VILLARD  */
394ed914a2SStefan Herbrechtsmeier #define MUX_GUMSTIX() \
404ed914a2SStefan Herbrechtsmeier   /*GPMC*/\
414ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(GPMC_NCS1),		(IDIS | PTU | EN  | M0)) /*GPMC_nCS1*/\
424ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(GPMC_NCS4),		(IDIS | PTU | EN  | M0)) /*GPMC_nCS4*/\
434ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(GPMC_NCS5),		(IDIS | PTU | EN  | M0)) /*GPMC_nCS5*/\
444ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(GPMC_NCS6),		(IEN  | PTD | DIS | M0)) /*GPMC_nCS6*/\
454ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(GPMC_WAIT1),		(IEN  | PTU | EN  | M4)) /*GPIO_63*/\
464ed914a2SStefan Herbrechtsmeier 								 /* - CAM_IRQ*/\
474ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(GPMC_WAIT2),		(IEN  | PTU | EN  | M4)) /*GPIO_64*/\
484ed914a2SStefan Herbrechtsmeier 								 /* - SMSC911X_NRES*/\
494ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(GPMC_WAIT3),		(IEN  | PTU | DIS | M4)) /*GPIO_65*/\
504ed914a2SStefan Herbrechtsmeier  /*DSS*/\
514ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_PCLK),		(IDIS | PTD | DIS | M0)) /*DSS_PCLK*/\
524ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_HSYNC),		(IDIS | PTD | DIS | M0)) /*DSS_HSYNC*/\
534ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_VSYNC),		(IDIS | PTD | DIS | M0)) /*DSS_VSYNC*/\
544ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_ACBIAS),		(IDIS | PTD | DIS | M0)) /*DSS_ACBIAS*/\
554ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA0),		(IDIS | PTD | DIS | M0)) /*DSS_DATA0*/\
564ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA1),		(IDIS | PTD | DIS | M0)) /*DSS_DATA1*/\
574ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA2),		(IDIS | PTD | DIS | M0)) /*DSS_DATA2*/\
584ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA3),		(IDIS | PTD | DIS | M0)) /*DSS_DATA3*/\
594ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA4),		(IDIS | PTD | DIS | M0)) /*DSS_DATA4*/\
604ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA5),		(IDIS | PTD | DIS | M0)) /*DSS_DATA5*/\
614ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA6),		(IDIS | PTD | DIS | M0)) /*DSS_DATA6*/\
624ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA7),		(IDIS | PTD | DIS | M0)) /*DSS_DATA7*/\
634ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA8),		(IDIS | PTD | DIS | M0)) /*DSS_DATA8*/\
644ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA9),		(IDIS | PTD | DIS | M0)) /*DSS_DATA9*/\
654ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA10),		(IDIS | PTD | DIS | M0)) /*DSS_DATA10*/\
664ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA11),		(IDIS | PTD | DIS | M0)) /*DSS_DATA11*/\
674ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA12),		(IDIS | PTD | DIS | M0)) /*DSS_DATA12*/\
684ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA13),		(IDIS | PTD | DIS | M0)) /*DSS_DATA13*/\
694ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA14),		(IDIS | PTD | DIS | M0)) /*DSS_DATA14*/\
704ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA15),		(IDIS | PTD | DIS | M0)) /*DSS_DATA15*/\
714ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA16),		(IDIS | PTD | DIS | M0)) /*DSS_DATA16*/\
724ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA17),		(IDIS | PTD | DIS | M0)) /*DSS_DATA17*/\
734ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA18),		(IDIS | PTD | DIS | M0)) /*DSS_DATA18*/\
744ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA19),		(IDIS | PTD | DIS | M0)) /*DSS_DATA19*/\
754ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA20),		(IDIS | PTD | DIS | M0)) /*DSS_DATA20*/\
764ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA21),		(IDIS | PTD | DIS | M0)) /*DSS_DATA21*/\
774ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA22),		(IDIS | PTD | DIS | M0)) /*DSS_DATA22*/\
784ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(DSS_DATA23),		(IDIS | PTD | DIS | M0)) /*DSS_DATA23*/\
794ed914a2SStefan Herbrechtsmeier  /*CAMERA*/\
804ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(CAM_FLD),		(IDIS | PTD | DIS | M4)) /*CAM_FLD*/\
814ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(CAM_XCLKB),		(IDIS | PTD | DIS | M0)) /*CAM_XCLKB*/\
824ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(CAM_WEN),		(IEN  | PTD | DIS | M0)) /*CAM_WEN*/\
834ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(CAM_STROBE),		(IDIS | PTD | DIS | M0)) /*CAM_STROBE*/\
844ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(CSI2_DX1),		(IEN  | PTD | EN  | M4)) /*GPIO_114*/\
854ed914a2SStefan Herbrechtsmeier 								 /* - PEN_DOWN*/\
864ed914a2SStefan Herbrechtsmeier  /*Bluetooth*/\
874ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART2_CTS),		(IEN  | PTD | DIS | M4)) /*GPIO_144 - LCD_EN*/\
884ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART2_RTS),		(IEN  | PTD | DIS | M4)) /*GPIO_145*/\
894ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART2_TX),		(IEN  | PTD | DIS | M4)) /*GPIO_146*/\
904ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART2_RX),		(IEN  | PTD | DIS | M4)) /*GPIO_147*/\
914ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART1_TX),		(IDIS | PTD | DIS | M0)) /*UART1_TX*/\
924ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART1_CTS),		(IEN  | PTU | DIS | M4)) /*GPIO_150-MMC3_WP*/\
934ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART1_RX),		(IEN  | PTD | DIS | M0)) /*UART1_RX*/\
944ed914a2SStefan Herbrechtsmeier  /*Serial Interface*/\
954ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(UART3_CTS_RCTX),	(IEN  | PTD | EN  | M0)) /*UART3_CTS_RCTX*/\
964ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(HDQ_SIO),		(IDIS | PTU | EN  | M4)) /*HDQ_SIO*/\
974ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(MCSPI1_CLK),		(IEN  | PTD | DIS | M0)) /*McSPI1_CLK*/\
984ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(MCSPI1_SIMO),	(IEN  | PTD | DIS | M0)) /*McSPI1_SIMO */\
994ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(MCSPI1_SOMI),	(IEN  | PTD | DIS | M0)) /*McSPI1_SOMI */\
1004ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(MCSPI1_CS0),		(IEN  | PTD | EN  | M0)) /*McSPI1_CS0*/\
1014ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(MCSPI1_CS1),		(IDIS | PTD | EN  | M0)) /*McSPI1_CS1*/\
1024ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(MCSPI1_CS2),		(IEN  | PTU | DIS | M4)) /*GPIO_176 */\
1034ed914a2SStefan Herbrechtsmeier 								 /* - LAN_INTR */\
1044ed914a2SStefan Herbrechtsmeier  /*Control and debug */\
1054ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(SYS_CLKOUT1),	(IEN  | PTU | EN  | M4)) /*GPIO_10*/\
1064ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(SYS_CLKOUT2),	(IEN  | PTU | EN  | M4)) /*GPIO_186*/\
1074ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_CLK_ES2),	(IEN  | PTU | EN  | M2)) /*MMC3_CLK*/\
1084ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_CTL_ES2),	(IEN  | PTU | EN  | M2)) /*MMC3_CMD*/\
1094ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D0_ES2),		(IEN  | PTU | EN  | M4)) /*GPIO_14*/\
1104ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D3_ES2),		(IEN  | PTU | EN  | M2)) /*MMC3_DAT3*/\
1114ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D4_ES2),		(IEN  | PTU | EN  | M2)) /*MMC3_DAT0*/\
1124ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D5_ES2),		(IEN  | PTU | EN  | M2)) /*MMC3_DAT1*/\
1134ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D6_ES2),		(IEN  | PTU | EN  | M2)) /*MMC3_DAT2*/\
1144ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D7_ES2),		(IEN  | PTU | EN  | M4)) /*GPIO_21*/\
1154ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D8_ES2),		(IEN  | PTU | EN  | M4)) /*GPIO_22*/\
1164ed914a2SStefan Herbrechtsmeier 	MUX_VAL(CP(ETK_D9_ES2),		(IEN  | PTU | EN  | M4)) /*GPIO_23*/\
1174ed914a2SStefan Herbrechtsmeier 
118a06e1629SSteve Sakoman #define MUX_OVERO_SDIO2_DIRECT() \
119a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_CLK),		(IEN  | PTU | EN  | M0)) /*MMC2_CLK*/\
120a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_CMD),		(IEN  | PTU | EN  | M0)) /*MMC2_CMD*/\
121a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT0),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT0*/\
122a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT1),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT1*/\
123a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT2),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT2*/\
124a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT3),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT3*/\
125a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT4),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT4*/\
126a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT5),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT5*/\
127a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT6),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT6*/\
128a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT7),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT7*/\
129a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT4),		(IEN  | PTD | EN  | M4)) /*GPIO_126*/\
130a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT5),		(IEN  | PTU | EN  | M4)) /*GPIO_127*/\
131a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT6),		(IEN  | PTU | EN  | M4)) /*GPIO_128*/\
132a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT7),		(IEN  | PTU | EN  | M4)) /*GPIO_129*/
133a06e1629SSteve Sakoman 
134a06e1629SSteve Sakoman #define MUX_OVERO_SDIO2_TRANSCEIVER() \
135a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_CLK),		(IEN  | PTU | EN  | M0)) /*MMC2_CLK*/\
136a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_CMD),		(IEN  | PTU | EN  | M0)) /*MMC2_CMD*/\
137a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT0),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT0*/\
138a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT1),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT1*/\
139a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT2),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT2*/\
140a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT3),		(IEN  | PTU | EN  | M0)) /*MMC2_DAT3*/\
141a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT4),		(IEN  | PTU | EN  | M1)) /*MMC2_DIR_DAT0*/\
142a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT5),		(IEN  | PTU | EN  | M1)) /*MMC2_DIR_DAT1*/\
143a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT6),		(IEN  | PTU | EN  | M1)) /*MMC2_DIR_CMD*/\
144a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC2_DAT7),		(IEN  | PTU | EN  | M1)) /*MMC2_CLKIN*/\
145a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT4),		(IEN  | PTU | EN  | M4)) /*GPIO_126*/\
146a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT5),		(IEN  | PTU | EN  | M4)) /*GPIO_127*/\
147a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT6),		(IEN  | PTU | EN  | M4)) /*GPIO_128*/\
148a06e1629SSteve Sakoman 	MUX_VAL(CP(MMC1_DAT7),		(IEN  | PTU | EN  | M4)) /*GPIO_129*/
149df382626SOlof Johansson 
150d64b5b89SSteve Sakoman #define MUX_USRP_E() \
151d64b5b89SSteve Sakoman 	MUX_VAL(CP(MCSPI1_SOMI),	(IEN  | PTD | DIS | M4)) /*GPIO_173 */\
152d64b5b89SSteve Sakoman 	MUX_VAL(CP(MCSPI1_CS1),		(IDIS | PTD | EN  | M4)) /*GPIO_175 */\
153d64b5b89SSteve Sakoman 
154ea5940e9SAsh Charles #define MUX_ALTO35() \
155ea5940e9SAsh Charles 	MUX_VAL(CP(SYS_CLKOUT1),	(IEN  | PTU | EN  | M4)) /*GPIO_10-BTN*/\
156ea5940e9SAsh Charles 	MUX_VAL(CP(UART1_TX),		(IDIS | PTD | DIS | M4)) /*GPIO_148-RED LED*/\
157ea5940e9SAsh Charles 	MUX_VAL(CP(UART1_CTS),		(IDIS | PTD | DIS | M4)) /*GPIO_150-YELLOW LED*/\
158ea5940e9SAsh Charles 	MUX_VAL(CP(UART1_RX),		(IDIS | PTD | DIS | M4)) /*GPIO_151-BLUE LED*/\
159ea5940e9SAsh Charles 	MUX_VAL(CP(HDQ_SIO),		(IDIS | PTD | DIS | M4)) /*GPIO_170-GREEN LED*/\
160ea5940e9SAsh Charles 	MUX_VAL(CP(MCSPI1_CS1),		(IDIS | PTD | EN  | M4)) /*GPIO_175*/\
161ea5940e9SAsh Charles 
162ea5940e9SAsh Charles #define MUX_ARBOR43C() \
163ea5940e9SAsh Charles 	MUX_VAL(CP(CSI2_DX1),		(IDIS | PTD | DIS | M4)) /*GPIO_114-RED LED*/\
164ea5940e9SAsh Charles 	MUX_VAL(CP(UART1_CTS),		(IDIS | PTD | DIS | M4)) /*GPIO_150-YELLOW LED*/\
165ea5940e9SAsh Charles 	MUX_VAL(CP(HDQ_SIO),		(IEN  | PTU | EN  | M4)) /*GPIO_170-BUTTON */\
166ea5940e9SAsh Charles 	MUX_VAL(CP(SYS_CLKOUT2),	(IDIS | PTD | DIS | M4)) /*GPIO_186-BLUE LED*/\
167ea5940e9SAsh Charles 	MUX_VAL(CP(JTAG_EMU1),		(IDIS | PTD | DIS | M4)) /*GPIO_31-CAP WAKE*/\
168ea5940e9SAsh Charles 	MUX_VAL(CP(SYS_CLKOUT1),	(IEN  | PTU | EN  | M4)) /*GPIO_10-CAP IRQ*/\
169ea5940e9SAsh Charles 
170127f9ae5SJean-Christophe PLAGNIOL-VILLARD #endif
171