sh: Add sh7720 pinmux code
This patch adds pinmux and gpio support for the sh7720 processor. Signed-off-by: Magnus Damm <damm@igel.co.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
This commit is contained in:
		
							parent
							
								
									7a5c679b52
								
							
						
					
					
						commit
						c9c3c1b74d
					
				
							
								
								
									
										174
									
								
								arch/sh/include/asm/sh7720.h
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										174
									
								
								arch/sh/include/asm/sh7720.h
									
									
									
									
									
										Normal file
									
								
							| @ -0,0 +1,174 @@ | ||||
| #ifndef __ASM_SH7720_H__ | ||||
| #define __ASM_SH7720_H__ | ||||
| 
 | ||||
| enum { | ||||
| 	/* PTA */ | ||||
| 	GPIO_PTA7, GPIO_PTA6, GPIO_PTA5, GPIO_PTA4, | ||||
| 	GPIO_PTA3, GPIO_PTA2, GPIO_PTA1, GPIO_PTA0, | ||||
| 
 | ||||
| 	/* PTB */ | ||||
| 	GPIO_PTB7, GPIO_PTB6, GPIO_PTB5, GPIO_PTB4, | ||||
| 	GPIO_PTB3, GPIO_PTB2, GPIO_PTB1, GPIO_PTB0, | ||||
| 
 | ||||
| 	/* PTC */ | ||||
| 	GPIO_PTC7, GPIO_PTC6, GPIO_PTC5, GPIO_PTC4, | ||||
| 	GPIO_PTC3, GPIO_PTC2, GPIO_PTC1, GPIO_PTC0, | ||||
| 
 | ||||
| 	/* PTD */ | ||||
| 	GPIO_PTD7, GPIO_PTD6, GPIO_PTD5, GPIO_PTD4, | ||||
| 	GPIO_PTD3, GPIO_PTD2, GPIO_PTD1, GPIO_PTD0, | ||||
| 
 | ||||
| 	/* PTE */ | ||||
| 	GPIO_PTE6, GPIO_PTE5, GPIO_PTE4, GPIO_PTE3, | ||||
| 	GPIO_PTE2, GPIO_PTE1, GPIO_PTE0, | ||||
| 
 | ||||
| 	/* PTF */ | ||||
| 	GPIO_PTF6, GPIO_PTF5, GPIO_PTF4, GPIO_PTF3, | ||||
| 	GPIO_PTF2, GPIO_PTF1, GPIO_PTF0, GPIO_PTG6, | ||||
| 
 | ||||
| 	/* PTG */ | ||||
| 	GPIO_PTG5, GPIO_PTG4, GPIO_PTG3, GPIO_PTG2, | ||||
| 	GPIO_PTG1, GPIO_PTG0, | ||||
| 
 | ||||
| 	/* PTH */ | ||||
| 	GPIO_PTH6, GPIO_PTH5, GPIO_PTH4, GPIO_PTH3, | ||||
| 	GPIO_PTH2, GPIO_PTH1, GPIO_PTH0, | ||||
| 
 | ||||
| 	/* PTJ */ | ||||
| 	GPIO_PTJ6, GPIO_PTJ5, GPIO_PTJ4, GPIO_PTJ3, | ||||
| 	GPIO_PTJ2, GPIO_PTJ1, GPIO_PTJ0, | ||||
| 
 | ||||
| 	/* PTK */ | ||||
| 	GPIO_PTK3, GPIO_PTK2, GPIO_PTK1, GPIO_PTK0, | ||||
| 
 | ||||
| 	/* PTL */ | ||||
| 	GPIO_PTL7, GPIO_PTL6, GPIO_PTL5, GPIO_PTL4, GPIO_PTL3, | ||||
| 
 | ||||
| 	/* PTM */ | ||||
| 	GPIO_PTM7, GPIO_PTM6, GPIO_PTM5, GPIO_PTM4, | ||||
| 	GPIO_PTM3, GPIO_PTM2, GPIO_PTM1, GPIO_PTM0, | ||||
| 
 | ||||
| 	/* PTP */ | ||||
| 	GPIO_PTP4, GPIO_PTP3, GPIO_PTP2, GPIO_PTP1, GPIO_PTP0, | ||||
| 
 | ||||
| 	/* PTR */ | ||||
| 	GPIO_PTR7, GPIO_PTR6, GPIO_PTR5, GPIO_PTR4, | ||||
| 	GPIO_PTR3, GPIO_PTR2, GPIO_PTR1, GPIO_PTR0, | ||||
| 
 | ||||
| 	/* PTS */ | ||||
| 	GPIO_PTS4, GPIO_PTS3, GPIO_PTS2, GPIO_PTS1, GPIO_PTS0, | ||||
| 
 | ||||
| 	/* PTT */ | ||||
| 	GPIO_PTT4, GPIO_PTT3, GPIO_PTT2, GPIO_PTT1, GPIO_PTT0, | ||||
| 
 | ||||
| 	/* PTU */ | ||||
| 	GPIO_PTU4, GPIO_PTU3, GPIO_PTU2, GPIO_PTU1, GPIO_PTU0, | ||||
| 
 | ||||
| 	/* PTV */ | ||||
| 	GPIO_PTV4, GPIO_PTV3, GPIO_PTV2, GPIO_PTV1, GPIO_PTV0, | ||||
| 
 | ||||
| 	/* BSC */ | ||||
| 	GPIO_FN_D31, GPIO_FN_D30, GPIO_FN_D29, GPIO_FN_D28, | ||||
| 	GPIO_FN_D27, GPIO_FN_D26, GPIO_FN_D25, GPIO_FN_D24, | ||||
| 	GPIO_FN_D23, GPIO_FN_D22, GPIO_FN_D21, GPIO_FN_D20, | ||||
| 	GPIO_FN_D19, GPIO_FN_D18, GPIO_FN_D17, GPIO_FN_D16, | ||||
| 	GPIO_FN_IOIS16, GPIO_FN_RAS, GPIO_FN_CAS, GPIO_FN_CKE, | ||||
| 	GPIO_FN_CS5B_CE1A, GPIO_FN_CS6B_CE1B, | ||||
| 	GPIO_FN_A25, GPIO_FN_A24, GPIO_FN_A23, GPIO_FN_A22, | ||||
| 	GPIO_FN_A21, GPIO_FN_A20, GPIO_FN_A19, GPIO_FN_A0, | ||||
| 	GPIO_FN_REFOUT, GPIO_FN_IRQOUT, | ||||
| 
 | ||||
| 	/* LCDC */ | ||||
| 	GPIO_FN_LCD_DATA15, GPIO_FN_LCD_DATA14, | ||||
| 	GPIO_FN_LCD_DATA13, GPIO_FN_LCD_DATA12, | ||||
| 	GPIO_FN_LCD_DATA11, GPIO_FN_LCD_DATA10, | ||||
| 	GPIO_FN_LCD_DATA9, GPIO_FN_LCD_DATA8, | ||||
| 	GPIO_FN_LCD_DATA7, GPIO_FN_LCD_DATA6, | ||||
| 	GPIO_FN_LCD_DATA5, GPIO_FN_LCD_DATA4, | ||||
| 	GPIO_FN_LCD_DATA3, GPIO_FN_LCD_DATA2, | ||||
| 	GPIO_FN_LCD_DATA1, GPIO_FN_LCD_DATA0, | ||||
| 	GPIO_FN_LCD_M_DISP, | ||||
| 	GPIO_FN_LCD_CL1, GPIO_FN_LCD_CL2, | ||||
| 	GPIO_FN_LCD_DON, GPIO_FN_LCD_FLM, | ||||
| 	GPIO_FN_LCD_VEPWC, GPIO_FN_LCD_VCPWC, | ||||
| 
 | ||||
| 	/* AFEIF */ | ||||
| 	GPIO_FN_AFE_RXIN, GPIO_FN_AFE_RDET, | ||||
| 	GPIO_FN_AFE_FS, GPIO_FN_AFE_TXOUT, | ||||
| 	GPIO_FN_AFE_SCLK, GPIO_FN_AFE_RLYCNT, | ||||
| 	GPIO_FN_AFE_HC1, | ||||
| 
 | ||||
| 	/* IIC */ | ||||
| 	GPIO_FN_IIC_SCL, GPIO_FN_IIC_SDA, | ||||
| 
 | ||||
| 	/* DAC */ | ||||
| 	GPIO_FN_DA1, GPIO_FN_DA0, | ||||
| 
 | ||||
| 	/* ADC */ | ||||
| 	GPIO_FN_AN3, GPIO_FN_AN2, GPIO_FN_AN1, GPIO_FN_AN0, GPIO_FN_ADTRG, | ||||
| 
 | ||||
| 	/* USB */ | ||||
| 	GPIO_FN_USB1D_RCV, GPIO_FN_USB1D_TXSE0, | ||||
| 	GPIO_FN_USB1D_TXDPLS, GPIO_FN_USB1D_DMNS, | ||||
| 	GPIO_FN_USB1D_DPLS, GPIO_FN_USB1D_SPEED, | ||||
| 	GPIO_FN_USB1D_TXENL, GPIO_FN_USB2_PWR_EN, | ||||
| 	GPIO_FN_USB1_PWR_EN_USBF_UPLUP, GPIO_FN_USB1D_SUSPEND, | ||||
| 
 | ||||
| 	/* INTC */ | ||||
| 	GPIO_FN_IRQ5, GPIO_FN_IRQ4, | ||||
| 	GPIO_FN_IRQ3_IRL3, GPIO_FN_IRQ2_IRL2, | ||||
| 	GPIO_FN_IRQ1_IRL1, GPIO_FN_IRQ0_IRL0, | ||||
| 
 | ||||
| 	/* PCC */ | ||||
| 	GPIO_FN_PCC_REG, GPIO_FN_PCC_DRV, | ||||
| 	GPIO_FN_PCC_BVD2, GPIO_FN_PCC_BVD1, | ||||
| 	GPIO_FN_PCC_CD2, GPIO_FN_PCC_CD1, | ||||
| 	GPIO_FN_PCC_RESET, GPIO_FN_PCC_RDY, | ||||
| 	GPIO_FN_PCC_VS2, GPIO_FN_PCC_VS1, | ||||
| 
 | ||||
| 	/* HUDI */ | ||||
| 	GPIO_FN_AUDATA3, GPIO_FN_AUDATA2, GPIO_FN_AUDATA1, GPIO_FN_AUDATA0, | ||||
| 	GPIO_FN_AUDCK, GPIO_FN_AUDSYNC, GPIO_FN_ASEBRKAK, GPIO_FN_TRST, | ||||
| 	GPIO_FN_TMS, GPIO_FN_TDO, GPIO_FN_TDI, GPIO_FN_TCK, | ||||
| 
 | ||||
| 	/* DMAC */ | ||||
| 	GPIO_FN_DACK1, GPIO_FN_DREQ1, GPIO_FN_DACK0, GPIO_FN_DREQ0, | ||||
| 	GPIO_FN_TEND1, GPIO_FN_TEND0, | ||||
| 
 | ||||
| 	/* SIOF0 */ | ||||
| 	GPIO_FN_SIOF0_SYNC, GPIO_FN_SIOF0_MCLK, | ||||
| 	GPIO_FN_SIOF0_TXD, GPIO_FN_SIOF0_RXD, | ||||
| 	GPIO_FN_SIOF0_SCK, | ||||
| 
 | ||||
| 	/* SIOF1 */ | ||||
| 	GPIO_FN_SIOF1_SYNC, GPIO_FN_SIOF1_MCLK, | ||||
| 	GPIO_FN_SIOF1_TXD, GPIO_FN_SIOF1_RXD, | ||||
| 	GPIO_FN_SIOF1_SCK, | ||||
| 
 | ||||
| 	/* SCIF0 */ | ||||
| 	GPIO_FN_SCIF0_TXD, GPIO_FN_SCIF0_RXD, | ||||
| 	GPIO_FN_SCIF0_RTS, GPIO_FN_SCIF0_CTS, GPIO_FN_SCIF0_SCK, | ||||
| 
 | ||||
| 	/* SCIF1 */ | ||||
| 	GPIO_FN_SCIF1_TXD, GPIO_FN_SCIF1_RXD, | ||||
| 	GPIO_FN_SCIF1_RTS, GPIO_FN_SCIF1_CTS, GPIO_FN_SCIF1_SCK, | ||||
| 
 | ||||
| 	/* TPU */ | ||||
| 	GPIO_FN_TPU_TO1, GPIO_FN_TPU_TO0, | ||||
| 	GPIO_FN_TPU_TI3B, GPIO_FN_TPU_TI3A, | ||||
| 	GPIO_FN_TPU_TI2B, GPIO_FN_TPU_TI2A, | ||||
| 	GPIO_FN_TPU_TO3, GPIO_FN_TPU_TO2, | ||||
| 
 | ||||
| 	/* SIM */ | ||||
| 	GPIO_FN_SIM_D, GPIO_FN_SIM_CLK, GPIO_FN_SIM_RST, | ||||
| 
 | ||||
| 	/* MMC */ | ||||
| 	GPIO_FN_MMC_DAT, GPIO_FN_MMC_CMD, | ||||
| 	GPIO_FN_MMC_CLK, GPIO_FN_MMC_VDDON, | ||||
| 	GPIO_FN_MMC_ODMOD, | ||||
| 
 | ||||
| 	/* SYSC */ | ||||
| 	GPIO_FN_STATUS0, GPIO_FN_STATUS1, | ||||
| }; | ||||
| 
 | ||||
| #endif /* __ASM_SH7720_H__ */ | ||||
| @ -24,4 +24,8 @@ clock-$(CONFIG_CPU_SUBTYPE_SH7710)	:= clock-sh7710.o | ||||
| clock-$(CONFIG_CPU_SUBTYPE_SH7720)	:= clock-sh7710.o | ||||
| clock-$(CONFIG_CPU_SUBTYPE_SH7712)	:= clock-sh7712.o | ||||
| 
 | ||||
| # Pinmux setup
 | ||||
| pinmux-$(CONFIG_CPU_SUBTYPE_SH7720)	:= pinmux-sh7720.o | ||||
| 
 | ||||
| obj-y	+= $(clock-y) | ||||
| obj-$(CONFIG_GENERIC_GPIO)	+= $(pinmux-y) | ||||
|  | ||||
							
								
								
									
										1242
									
								
								arch/sh/kernel/cpu/sh3/pinmux-sh7720.c
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1242
									
								
								arch/sh/kernel/cpu/sh3/pinmux-sh7720.c
									
									
									
									
									
										Normal file
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
		Loading…
	
		Reference in New Issue
	
	Block a user