mirror of
				https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson
				synced 2025-10-31 07:02:06 +00:00 
			
		
		
		
	 3a59826443
			
		
	
	
		3a59826443
		
	
	
	
	
		
			
			This patch series adds support for ITO Co., Ltd.'s SH-2007 reference platform (A PC-104 based SH7780 platform). This is a direct port of the out-of-tree board support from the vendor's kernel, originally located at: http://ms-n.org/sh-linux/kernel/ More information on the board and the vendor can be obtained from the vendor's site at: http://www.itonet.co.jp/ Presently supported peripherals are CF and ethernet, with support for the on-board IDE still pending further testing. Reviewed-by: Nobuhiro Iwamatsu <iwamatsu@nigauri.org> Reviewed-by: Magnus Damm <magnus.damm@gmail.com> Signed-off-by: Hitoshi Mitake <mitake@dcl.info.waseda.ac.jp> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
		
			
				
	
	
		
			118 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			118 lines
		
	
	
		
			3.4 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef __MACH_SH2007_H
 | |
| #define __MACH_SH2007_H
 | |
| 
 | |
| #define CS5BCR		0xff802050
 | |
| #define CS5WCR		0xff802058
 | |
| #define CS5PCR		0xff802070
 | |
| 
 | |
| #define BUS_SZ8		1
 | |
| #define BUS_SZ16	2
 | |
| #define BUS_SZ32	3
 | |
| 
 | |
| #define PCMCIA_IODYN	1
 | |
| #define PCMCIA_ATA	0
 | |
| #define PCMCIA_IO8	2
 | |
| #define PCMCIA_IO16	3
 | |
| #define PCMCIA_COMM8	4
 | |
| #define PCMCIA_COMM16	5
 | |
| #define PCMCIA_ATTR8	6
 | |
| #define PCMCIA_ATTR16	7
 | |
| 
 | |
| #define TYPE_SRAM	0
 | |
| #define TYPE_PCMCIA	4
 | |
| 
 | |
| /* write-read/write-write delay (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define IWW5		0
 | |
| #define IWW6		3
 | |
| /* different area, read-write delay (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define IWRWD5		2
 | |
| #define IWRWD6		2
 | |
| /* same area, read-write delay (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define IWRWS5		2
 | |
| #define IWRWS6		2
 | |
| /* different area, read-read delay (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define IWRRD5		2
 | |
| #define IWRRD6		2
 | |
| /* same area, read-read delay (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define IWRRS5		0
 | |
| #define IWRRS6		2
 | |
| /* burst count (0-3:4,8,16,32) */
 | |
| #define BST5		0
 | |
| #define BST6		0
 | |
| /* bus size */
 | |
| #define SZ5		BUS_SZ16
 | |
| #define SZ6		BUS_SZ16
 | |
| /* RD hold for SRAM (0-1:0,1) */
 | |
| #define RDSPL5		0
 | |
| #define RDSPL6		0
 | |
| /* Burst pitch (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define BW5		0
 | |
| #define BW6		0
 | |
| /* Multiplex (0-1:0,1) */
 | |
| #define MPX5		0
 | |
| #define MPX6		0
 | |
| /* device type */
 | |
| #define TYPE5		TYPE_PCMCIA
 | |
| #define TYPE6		TYPE_PCMCIA
 | |
| /* address setup before assert CSn for SRAM (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define ADS5		0
 | |
| #define ADS6		0
 | |
| /* address hold after negate CSn for SRAM (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define ADH5		0
 | |
| #define ADH6		0
 | |
| /* CSn assert to RD assert delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define RDS5		0
 | |
| #define RDS6		0
 | |
| /* RD negate to CSn negate delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define RDH5		0
 | |
| #define RDH6		0
 | |
| /* CSn assert to WE assert delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define WTS5		0
 | |
| #define WTS6		0
 | |
| /* WE negate to CSn negate delay for SRAM (0-7:0,1,2,3,4,5,6,7) */
 | |
| #define WTH5		0
 | |
| #define WTH6		0
 | |
| /* BS hold (0-1:1,2) */
 | |
| #define BSH5		0
 | |
| #define BSH6		0
 | |
| /* wait cycle (0-15:0,1,2,3,4,5,6,7,8,9,11,13,15,17,21,25) */
 | |
| #define IW5		6	/* 60ns PIO mode 4 */
 | |
| #define IW6		15	/* 250ns */
 | |
| 
 | |
| #define SAA5		PCMCIA_IODYN	/* IDE area b4000000-b5ffffff */
 | |
| #define SAB5		PCMCIA_IODYN	/* CF  area b6000000-b7ffffff */
 | |
| #define PCWA5		0	/* additional wait A (0-3:0,15,30,50) */
 | |
| #define PCWB5		0	/* additional wait B (0-3:0,15,30,50) */
 | |
| /* wait B (0-15:0,1,2,3,4,5,6,7,8,9,11,13,15,17,21,25) */
 | |
| #define PCIW5		12
 | |
| /* Address->OE/WE assert delay A (0-7:0,1,2,3,6,9,12,15) */
 | |
| #define TEDA5		2
 | |
| /* Address->OE/WE assert delay B (0-7:0,1,2,3,6,9,12,15) */
 | |
| #define TEDB5		4
 | |
| /* OE/WE negate->Address delay A (0-7:0,1,2,3,6,9,12,15) */
 | |
| #define TEHA5		2
 | |
| /* OE/WE negate->Address delay B (0-7:0,1,2,3,6,9,12,15) */
 | |
| #define TEHB5		3
 | |
| 
 | |
| #define CS5BCR_D	((IWW5<<28)|(IWRWD5<<24)|(IWRWS5<<20)|		\
 | |
| 			(IWRRD5<<16)|(IWRRS5<<12)|(BST5<<10)|		\
 | |
| 			(SZ5<<8)|(RDSPL5<<7)|(BW5<<4)|(MPX5<<3)|TYPE5)
 | |
| #define CS5WCR_D	((ADS5<<28)|(ADH5<<24)|(RDS5<<20)|	\
 | |
| 			(RDH5<<16)|(WTS5<<12)|(WTH5<<8)|(BSH5<<4)|IW5)
 | |
| #define CS5PCR_D	((SAA5<<28)|(SAB5<<24)|(PCWA5<<22)|		\
 | |
| 			(PCWB5<<20)|(PCIW5<<16)|(TEDA5<<12)|		\
 | |
| 			(TEDB5<<8)|(TEHA5<<4)|TEHB5)
 | |
| 
 | |
| #define SMC0_BASE       0xb0800000      /* eth0 */
 | |
| #define SMC1_BASE       0xb0900000      /* eth1 */
 | |
| #define CF_BASE         0xb6100000      /* Compact Flash (I/O area) */
 | |
| #define IDE_BASE        0xb4000000      /* IDE */
 | |
| #define PC104_IO_BASE   0xb8000000
 | |
| #define PC104_MEM_BASE  0xba000000
 | |
| #define SMC_IO_SIZE     0x100
 | |
| 
 | |
| #define CF_OFFSET       0x1f0
 | |
| #define IDE_OFFSET      0x170
 | |
| 
 | |
| #endif /* __MACH_SH2007_H */
 |