forked from mirrors/linux
		
	 1da177e4c3
			
		
	
	
		1da177e4c3
		
	
	
	
	
		
			
			Initial git repository build. I'm not bothering with the full history, even though we have it. We can create a separate "historical" git archive of that later if we want to, and in the meantime it's about 3.2GB when imported into git - space that would just make the early git days unnecessarily complicated, when we don't have a lot of good infrastructure for it. Let it rip!
		
			
				
	
	
		
			131 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			131 lines
		
	
	
	
		
			2.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| #ifndef _LINUX_ISICOM_H
 | |
| #define _LINUX_ISICOM_H
 | |
| 
 | |
| /*#define		ISICOM_DEBUG*/
 | |
| /*#define		ISICOM_DEBUG_DTR_RTS*/
 | |
| 
 | |
| 
 | |
| /*
 | |
|  *	Firmware Loader definitions ...
 | |
|  */
 | |
|  
 | |
| #define		__MultiTech		('M'<<8)
 | |
| #define		MIOCTL_LOAD_FIRMWARE	(__MultiTech | 0x01)
 | |
| #define         MIOCTL_READ_FIRMWARE    (__MultiTech | 0x02)
 | |
| #define         MIOCTL_XFER_CTRL	(__MultiTech | 0x03)
 | |
| #define         MIOCTL_RESET_CARD	(__MultiTech | 0x04)
 | |
| 
 | |
| #define		DATA_SIZE	16
 | |
| 
 | |
| typedef	struct	{
 | |
| 		unsigned short	exec_segment;
 | |
| 		unsigned short	exec_addr;
 | |
| }	exec_record;
 | |
| 
 | |
| typedef	struct	{
 | |
| 		int		board;		/* Board to load */
 | |
| 		unsigned short	addr;
 | |
| 		unsigned short	count;
 | |
| }	bin_header;
 | |
| 
 | |
| typedef	struct	{
 | |
| 		int		board;		/* Board to load */
 | |
| 		unsigned short	addr;
 | |
| 		unsigned short	count;
 | |
| 		unsigned short	segment;
 | |
| 		unsigned char	bin_data[DATA_SIZE];
 | |
| }	bin_frame;
 | |
| 
 | |
| #ifdef __KERNEL__
 | |
| 
 | |
| #define		YES	1
 | |
| #define		NO	0
 | |
| 
 | |
| #define		ISILOAD_MISC_MINOR	155	/* /dev/isctl */
 | |
| #define		ISILOAD_NAME		"ISILoad"
 | |
| 
 | |
| /*	
 | |
|  *  ISICOM Driver definitions ...
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #define		ISICOM_NAME	"ISICom"
 | |
| 
 | |
| /*
 | |
|  *      PCI definitions
 | |
|  */
 | |
| 
 | |
|  #define        DEVID_COUNT     9
 | |
|  #define        VENDOR_ID       0x10b5
 | |
| 
 | |
| /*
 | |
|  *	These are now officially allocated numbers
 | |
|  */
 | |
| 
 | |
| #define		ISICOM_NMAJOR	112	/* normal  */
 | |
| #define		ISICOM_CMAJOR	113	/* callout */
 | |
| #define		ISICOM_MAGIC	(('M' << 8) | 'T')
 | |
| 
 | |
| #define		WAKEUP_CHARS	256	/* hard coded for now	*/ 
 | |
| #define		TX_SIZE		254 
 | |
|  
 | |
| #define		BOARD_COUNT	4
 | |
| #define		PORT_COUNT	(BOARD_COUNT*16)
 | |
| 
 | |
| #define		SERIAL_TYPE_NORMAL	1
 | |
| 
 | |
| /*   character sizes  */
 | |
| 
 | |
| #define		ISICOM_CS5		0x0000
 | |
| #define		ISICOM_CS6		0x0001
 | |
| #define		ISICOM_CS7		0x0002
 | |
| #define		ISICOM_CS8		0x0003
 | |
| 
 | |
| /* stop bits */
 | |
| 
 | |
| #define		ISICOM_1SB		0x0000
 | |
| #define		ISICOM_2SB		0x0004
 | |
| 
 | |
| /* parity */
 | |
| 
 | |
| #define		ISICOM_NOPAR		0x0000
 | |
| #define		ISICOM_ODPAR		0x0008
 | |
| #define		ISICOM_EVPAR		0x0018
 | |
| 
 | |
| /* flow control */
 | |
| 
 | |
| #define		ISICOM_CTSRTS		0x03
 | |
| #define		ISICOM_INITIATE_XONXOFF	0x04
 | |
| #define		ISICOM_RESPOND_XONXOFF	0x08
 | |
| 
 | |
| #define InterruptTheCard(base) (outw(0,(base)+0xc)) 
 | |
| #define ClearInterrupt(base) (inw((base)+0x0a))	
 | |
| 
 | |
| #define	BOARD(line)  (((line) >> 4) & 0x3)
 | |
| 
 | |
| 	/*	isi kill queue bitmap	*/
 | |
| 	
 | |
| #define		ISICOM_KILLTX		0x01
 | |
| #define		ISICOM_KILLRX		0x02
 | |
| 
 | |
| 	/* isi_board status bitmap */
 | |
| 	
 | |
| #define		FIRMWARE_LOADED		0x0001
 | |
| #define		BOARD_ACTIVE		0x0002
 | |
| 
 | |
|  	/* isi_port status bitmap  */
 | |
| 
 | |
| #define		ISI_CTS			0x1000
 | |
| #define		ISI_DSR			0x2000
 | |
| #define		ISI_RI			0x4000
 | |
| #define		ISI_DCD			0x8000
 | |
| #define		ISI_DTR			0x0100
 | |
| #define		ISI_RTS			0x0200
 | |
| 
 | |
| 
 | |
| #define		ISI_TXOK		0x0001 
 | |
|  
 | |
| #endif	/*	__KERNEL__	*/
 | |
| 
 | |
| #endif	/*	ISICOM_H	*/
 | |
| 
 |