aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/lpfc/lpfc_hw.h
diff options
context:
space:
mode:
authorJeff Garzik <jeff@garzik.org>2006-03-22 19:13:54 -0500
committerJeff Garzik <jeff@garzik.org>2006-03-22 19:13:54 -0500
commitf01c18456993bab43067b678f56c87ca954aa43b (patch)
tree3e0cd0cdf1a57618202b46a7126125902e3ab832 /drivers/scsi/lpfc/lpfc_hw.h
parent949ec2c8e6b7b89179b85baf6309c009e1a1b951 (diff)
parent1c2e02750b992703a8a18634e08b04353face243 (diff)
Merge branch 'master'
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_hw.h')
-rw-r--r--drivers/scsi/lpfc/lpfc_hw.h65
1 files changed, 50 insertions, 15 deletions
diff --git a/drivers/scsi/lpfc/lpfc_hw.h b/drivers/scsi/lpfc/lpfc_hw.h
index 1ea565e0561f..54d04188f7cc 100644
--- a/drivers/scsi/lpfc/lpfc_hw.h
+++ b/drivers/scsi/lpfc/lpfc_hw.h
@@ -1,7 +1,7 @@
1/******************************************************************* 1/*******************************************************************
2 * This file is part of the Emulex Linux Device Driver for * 2 * This file is part of the Emulex Linux Device Driver for *
3 * Fibre Channel Host Bus Adapters. * 3 * Fibre Channel Host Bus Adapters. *
4 * Copyright (C) 2004-2005 Emulex. All rights reserved. * 4 * Copyright (C) 2004-2006 Emulex. All rights reserved. *
5 * EMULEX and SLI are trademarks of Emulex. * 5 * EMULEX and SLI are trademarks of Emulex. *
6 * www.emulex.com * 6 * www.emulex.com *
7 * * 7 * *
@@ -454,10 +454,13 @@ struct serv_parm { /* Structure is in Big Endian format */
454#define ELS_CMD_ADISC 0x52000000 454#define ELS_CMD_ADISC 0x52000000
455#define ELS_CMD_FARP 0x54000000 455#define ELS_CMD_FARP 0x54000000
456#define ELS_CMD_FARPR 0x55000000 456#define ELS_CMD_FARPR 0x55000000
457#define ELS_CMD_RPS 0x56000000
458#define ELS_CMD_RPL 0x57000000
457#define ELS_CMD_FAN 0x60000000 459#define ELS_CMD_FAN 0x60000000
458#define ELS_CMD_RSCN 0x61040000 460#define ELS_CMD_RSCN 0x61040000
459#define ELS_CMD_SCR 0x62000000 461#define ELS_CMD_SCR 0x62000000
460#define ELS_CMD_RNID 0x78000000 462#define ELS_CMD_RNID 0x78000000
463#define ELS_CMD_LIRR 0x7A000000
461#else /* __LITTLE_ENDIAN_BITFIELD */ 464#else /* __LITTLE_ENDIAN_BITFIELD */
462#define ELS_CMD_MASK 0xffff 465#define ELS_CMD_MASK 0xffff
463#define ELS_RSP_MASK 0xff 466#define ELS_RSP_MASK 0xff
@@ -486,10 +489,13 @@ struct serv_parm { /* Structure is in Big Endian format */
486#define ELS_CMD_ADISC 0x52 489#define ELS_CMD_ADISC 0x52
487#define ELS_CMD_FARP 0x54 490#define ELS_CMD_FARP 0x54
488#define ELS_CMD_FARPR 0x55 491#define ELS_CMD_FARPR 0x55
492#define ELS_CMD_RPS 0x56
493#define ELS_CMD_RPL 0x57
489#define ELS_CMD_FAN 0x60 494#define ELS_CMD_FAN 0x60
490#define ELS_CMD_RSCN 0x0461 495#define ELS_CMD_RSCN 0x0461
491#define ELS_CMD_SCR 0x62 496#define ELS_CMD_SCR 0x62
492#define ELS_CMD_RNID 0x78 497#define ELS_CMD_RNID 0x78
498#define ELS_CMD_LIRR 0x7A
493#endif 499#endif
494 500
495/* 501/*
@@ -758,12 +764,40 @@ typedef struct _RNID { /* Structure is in Big Endian format */
758 } un; 764 } un;
759} RNID; 765} RNID;
760 766
761typedef struct _RRQ { /* Structure is in Big Endian format */ 767typedef struct _RPS { /* Structure is in Big Endian format */
762 uint32_t SID; 768 union {
763 uint16_t Oxid; 769 uint32_t portNum;
764 uint16_t Rxid; 770 struct lpfc_name portName;
765 uint8_t resv[32]; /* optional association hdr */ 771 } un;
766} RRQ; 772} RPS;
773
774typedef struct _RPS_RSP { /* Structure is in Big Endian format */
775 uint16_t rsvd1;
776 uint16_t portStatus;
777 uint32_t linkFailureCnt;
778 uint32_t lossSyncCnt;
779 uint32_t lossSignalCnt;
780 uint32_t primSeqErrCnt;
781 uint32_t invalidXmitWord;
782 uint32_t crcCnt;
783} RPS_RSP;
784
785typedef struct _RPL { /* Structure is in Big Endian format */
786 uint32_t maxsize;
787 uint32_t index;
788} RPL;
789
790typedef struct _PORT_NUM_BLK {
791 uint32_t portNum;
792 uint32_t portID;
793 struct lpfc_name portName;
794} PORT_NUM_BLK;
795
796typedef struct _RPL_RSP { /* Structure is in Big Endian format */
797 uint32_t listLen;
798 uint32_t index;
799 PORT_NUM_BLK port_num_blk;
800} RPL_RSP;
767 801
768/* This is used for RSCN command */ 802/* This is used for RSCN command */
769typedef struct _D_ID { /* Structure is in Big Endian format */ 803typedef struct _D_ID { /* Structure is in Big Endian format */
@@ -804,7 +838,6 @@ typedef struct _ELS_PKT { /* Structure is in Big Endian format */
804 FARP farp; /* Payload for FARP/ACC */ 838 FARP farp; /* Payload for FARP/ACC */
805 FAN fan; /* Payload for FAN */ 839 FAN fan; /* Payload for FAN */
806 SCR scr; /* Payload for SCR/ACC */ 840 SCR scr; /* Payload for SCR/ACC */
807 RRQ rrq; /* Payload for RRQ */
808 RNID rnid; /* Payload for RNID */ 841 RNID rnid; /* Payload for RNID */
809 uint8_t pad[128 - 4]; /* Pad out to payload of 128 bytes */ 842 uint8_t pad[128 - 4]; /* Pad out to payload of 128 bytes */
810 } un; 843 } un;
@@ -1200,7 +1233,9 @@ typedef struct { /* FireFly BIU registers */
1200#define MBX_SET_MASK 0x20 1233#define MBX_SET_MASK 0x20
1201#define MBX_SET_SLIM 0x21 1234#define MBX_SET_SLIM 0x21
1202#define MBX_UNREG_D_ID 0x23 1235#define MBX_UNREG_D_ID 0x23
1236#define MBX_KILL_BOARD 0x24
1203#define MBX_CONFIG_FARP 0x25 1237#define MBX_CONFIG_FARP 0x25
1238#define MBX_BEACON 0x2A
1204 1239
1205#define MBX_LOAD_AREA 0x81 1240#define MBX_LOAD_AREA 0x81
1206#define MBX_RUN_BIU_DIAG64 0x84 1241#define MBX_RUN_BIU_DIAG64 0x84
@@ -1676,13 +1711,13 @@ typedef struct {
1676 uint32_t rttov; 1711 uint32_t rttov;
1677 uint32_t altov; 1712 uint32_t altov;
1678 uint32_t lmt; 1713 uint32_t lmt;
1679#define LMT_RESERVED 0x0 /* Not used */ 1714#define LMT_RESERVED 0x000 /* Not used */
1680#define LMT_266_10bit 0x1 /* 265.625 Mbaud 10 bit iface */ 1715#define LMT_1Gb 0x004
1681#define LMT_532_10bit 0x2 /* 531.25 Mbaud 10 bit iface */ 1716#define LMT_2Gb 0x008
1682#define LMT_1063_20bit 0x3 /* 1062.5 Mbaud 20 bit iface */ 1717#define LMT_4Gb 0x040
1683#define LMT_1063_10bit 0x4 /* 1062.5 Mbaud 10 bit iface */ 1718#define LMT_8Gb 0x080
1684#define LMT_2125_10bit 0x8 /* 2125 Mbaud 10 bit iface */ 1719#define LMT_10Gb 0x100
1685#define LMT_4250_10bit 0x40 /* 4250 Mbaud 10 bit iface */ 1720
1686 1721
1687 uint32_t rsvd2; 1722 uint32_t rsvd2;
1688 uint32_t rsvd3; 1723 uint32_t rsvd3;