76 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			76 lines
		
	
	
		
			2.3 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /*
 | |
|  * Copyright (c) 2005-2009 Brocade Communications Systems, Inc.
 | |
|  * All rights reserved
 | |
|  * www.brocade.com
 | |
|  *
 | |
|  * Linux driver for Brocade Fibre Channel Host Bus Adapter.
 | |
|  *
 | |
|  * This program is free software; you can redistribute it and/or modify it
 | |
|  * under the terms of the GNU General Public License (GPL) Version 2 as
 | |
|  * published by the Free Software Foundation
 | |
|  *
 | |
|  * 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.
 | |
|  */
 | |
| 
 | |
| /**
 | |
|  *  pcifw.h PCI FW related headers
 | |
|  */
 | |
| 
 | |
| #ifndef __PCIFW_H__
 | |
| #define __PCIFW_H__
 | |
| 
 | |
| #pragma pack(1)
 | |
| 
 | |
| struct pnp_hdr_s{
 | |
|   u32	signature;	/* "$PnP" */
 | |
|   u8	rev;		/* Struct revision */
 | |
|   u8 	len;		/* Header structure len in multiples
 | |
| 				 * of 16 bytes */
 | |
|   u16  off;		/* Offset to next header 00 if none */
 | |
|   u8	rsvd;		/* Reserved byte */
 | |
|   u8	cksum;		/* 8-bit checksum for this header */
 | |
|   u32	pnp_dev_id;	/* PnP Device Id */
 | |
|   u16  mfstr;		/* Pointer to manufacturer string */
 | |
|   u16	prstr;		/* Pointer to product string */
 | |
|   u8	devtype[3];	/* Device Type Code */
 | |
|   u8	devind;		/* Device Indicator */
 | |
|   u16	bcventr;	/* Bootstrap entry vector */
 | |
|   u16	rsvd2;		/* Reserved */
 | |
|   u16  sriv;		/* Static resource information vector */
 | |
| };
 | |
| 
 | |
| struct pci_3_0_ds_s{
 | |
|  u32	sig;   		/* Signature "PCIR" */
 | |
|  u16	vendid;		/* Vendor ID */
 | |
|  u16	devid;		/* Device ID */
 | |
|  u16	devlistoff;	/* Device List Offset */
 | |
|  u16	len;		/* PCI Data Structure Length */
 | |
|  u8	rev;		/* PCI Data Structure Revision */
 | |
|  u8	clcode[3];	/* Class Code */
 | |
|  u16	imglen;		/* Code image length in multiples of
 | |
| 				 * 512 bytes */
 | |
|  u16	coderev;	/* Revision level of code/data */
 | |
|  u8	codetype;	/* Code type 0x00 - BIOS */
 | |
|  u8	indr;		/* Last image indicator */
 | |
|  u16	mrtimglen;	/* Max Run Time Image Length */
 | |
|  u16	cuoff;		/* Config Utility Code Header Offset */
 | |
|  u16	dmtfclp;	/* DMTF CLP entry point offset */
 | |
| };
 | |
| 
 | |
| struct pci_optrom_hdr_s{
 | |
|  u16	sig;		/* Signature 0x55AA */
 | |
|  u8	len;		/* Option ROM length in units of 512 bytes */
 | |
|  u8	inivec[3];	/* Initialization vector */
 | |
|  u8	rsvd[16];	/* Reserved field */
 | |
|  u16	verptr;		/* Pointer to version string - private */
 | |
|  u16	pcids;		/* Pointer to PCI data structure */
 | |
|  u16	pnphdr;		/* Pointer to PnP expansion header */
 | |
| };
 | |
| 
 | |
| #pragma pack()
 | |
| 
 | |
| #endif
 |