90 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			90 lines
		
	
	
		
			2.1 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  *  This program is free software; you can redistribute it and/or modify
 | |
|  *  it under the terms of the GNU General Public License as published by
 | |
|  *  the Free Software Foundation; either version 2 of the License, or
 | |
|  *  (at your option) any later version.
 | |
|  *
 | |
|  *  This program is distributed in the hope that it will be useful,
 | |
|  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
 | |
|  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
 | |
|  *  GNU General Public License for more details.
 | |
|  *
 | |
|  *  Copyright (C) 2004 IDT Inc.
 | |
|  *  Copyright (C) 2006 Felix Fietkau <nbd@openwrt.org>
 | |
|  */
 | |
| #ifndef __ASM_RC32434_RB_H
 | |
| #define __ASM_RC32434_RB_H
 | |
| 
 | |
| #include <linux/genhd.h>
 | |
| 
 | |
| #define REGBASE		0x18000000
 | |
| #define IDT434_REG_BASE	((volatile void *) KSEG1ADDR(REGBASE))
 | |
| #define UART0BASE	0x58000
 | |
| #define RST		(1 << 15)
 | |
| #define DEV0BASE	0x010000
 | |
| #define DEV0MASK	0x010004
 | |
| #define DEV0C		0x010008
 | |
| #define DEV0T		0x01000C
 | |
| #define DEV1BASE	0x010010
 | |
| #define DEV1MASK	0x010014
 | |
| #define DEV1C		0x010018
 | |
| #define DEV1TC		0x01001C
 | |
| #define DEV2BASE	0x010020
 | |
| #define DEV2MASK	0x010024
 | |
| #define DEV2C		0x010028
 | |
| #define DEV2TC		0x01002C
 | |
| #define DEV3BASE	0x010030
 | |
| #define DEV3MASK	0x010034
 | |
| #define DEV3C		0x010038
 | |
| #define DEV3TC		0x01003C
 | |
| #define BTCS		0x010040
 | |
| #define BTCOMPARE	0x010044
 | |
| #define GPIOBASE	0x050000
 | |
| /* Offsets relative to GPIOBASE */
 | |
| #define GPIOFUNC	0x00
 | |
| #define GPIOCFG		0x04
 | |
| #define GPIOD		0x08
 | |
| #define GPIOILEVEL	0x0C
 | |
| #define GPIOISTAT	0x10
 | |
| #define GPIONMIEN	0x14
 | |
| #define IMASK6		0x38
 | |
| #define LO_WPX		(1 << 0)
 | |
| #define LO_ALE		(1 << 1)
 | |
| #define LO_CLE		(1 << 2)
 | |
| #define LO_CEX		(1 << 3)
 | |
| #define LO_FOFF		(1 << 5)
 | |
| #define LO_SPICS	(1 << 6)
 | |
| #define LO_ULED		(1 << 7)
 | |
| 
 | |
| #define BIT_TO_MASK(x)	(1 << x)
 | |
| 
 | |
| struct dev_reg {
 | |
| 	u32	base;
 | |
| 	u32	mask;
 | |
| 	u32	ctl;
 | |
| 	u32	timing;
 | |
| };
 | |
| 
 | |
| struct korina_device {
 | |
| 	char *name;
 | |
| 	unsigned char mac[6];
 | |
| 	struct net_device *dev;
 | |
| };
 | |
| 
 | |
| struct cf_device {
 | |
| 	int gpio_pin;
 | |
| 	void *dev;
 | |
| 	struct gendisk *gd;
 | |
| };
 | |
| 
 | |
| struct mpmc_device {
 | |
| 	unsigned char	state;
 | |
| 	spinlock_t	lock;
 | |
| 	void __iomem 	*base;
 | |
| };
 | |
| 
 | |
| extern void set_latch_u5(unsigned char or_mask, unsigned char nand_mask);
 | |
| extern unsigned char get_latch_u5(void);
 | |
| 
 | |
| #endif  /* __ASM_RC32434_RB_H */
 |