Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 5c8bfc94 authored by David C Somayajulu's avatar David C Somayajulu Committed by James Bottomley
Browse files

[SCSI] qla4xxx: ql4_def.h log all AENs and cleanup



Add support for logging all AENs and clean up

Signed-off-by: default avatarDavid Somayajulu <david.somayajulu@qlogic.com>
Signed-off-by: default avatarMike Christie <michaelc@cs.wisc.edu>
Signed-off-by: default avatarJames Bottomley <James.Bottomley@SteelEye.com>
parent 01871066
Loading
Loading
Loading
Loading
+39 −39
Original line number Original line Diff line number Diff line
@@ -122,8 +122,7 @@


#define ISCSI_IPADDR_SIZE		4	/* IP address size */
#define ISCSI_IPADDR_SIZE		4	/* IP address size */
#define ISCSI_ALIAS_SIZE		32	/* ISCSI Alais name size */
#define ISCSI_ALIAS_SIZE		32	/* ISCSI Alais name size */
#define ISCSI_NAME_SIZE			255	/* ISCSI Name size -
#define ISCSI_NAME_SIZE			0xE0	/* ISCSI Name size */
						 * usually a string */


#define LSDW(x) ((u32)((u64)(x)))
#define LSDW(x) ((u32)((u64)(x)))
#define MSDW(x) ((u32)((((u64)(x)) >> 16) >> 16))
#define MSDW(x) ((u32)((((u64)(x)) >> 16) >> 16))
@@ -187,6 +186,18 @@ struct srb {
	u_long u_start;		/* Time when we handed the cmd to F/W */
	u_long u_start;		/* Time when we handed the cmd to F/W */
};
};


/*
 * Asynchronous Event Queue structure
 */
struct aen {
        uint32_t mbox_sts[MBOX_AEN_REG_COUNT];
};

struct ql4_aen_log {
        int count;
        struct aen entry[MAX_AEN_ENTRIES];
};

/*
/*
 * Device Database (DDB) structure
 * Device Database (DDB) structure
 */
 */
@@ -254,13 +265,6 @@ struct ddb_entry {
#define DF_ISNS_DISCOVERED	2	/* Device was discovered via iSNS */
#define DF_ISNS_DISCOVERED	2	/* Device was discovered via iSNS */
#define DF_FO_MASKED		3
#define DF_FO_MASKED		3


/*
 * Asynchronous Event Queue structure
 */
struct aen {
	uint32_t mbox_sts[MBOX_AEN_REG_COUNT];
};



#include "ql4_fw.h"
#include "ql4_fw.h"
#include "ql4_nvram.h"
#include "ql4_nvram.h"
@@ -270,20 +274,17 @@ struct aen {
 */
 */
struct scsi_qla_host {
struct scsi_qla_host {
	/* Linux adapter configuration data */
	/* Linux adapter configuration data */
	struct Scsi_Host *host; /* pointer to host data */
	uint32_t tot_ddbs;
	unsigned long flags;
	unsigned long flags;


#define AF_ONLINE			0 /* 0x00000001 */
#define AF_ONLINE			0 /* 0x00000001 */
#define AF_INIT_DONE			1 /* 0x00000002 */
#define AF_INIT_DONE			1 /* 0x00000002 */
#define AF_MBOX_COMMAND			2 /* 0x00000004 */
#define AF_MBOX_COMMAND			2 /* 0x00000004 */
#define AF_MBOX_COMMAND_DONE		3 /* 0x00000008 */
#define AF_MBOX_COMMAND_DONE		3 /* 0x00000008 */
#define AF_INTERRUPTS_ON	      6 /* 0x00000040 Not Used */
#define AF_INTERRUPTS_ON		6 /* 0x00000040 */
#define AF_GET_CRASH_RECORD		7 /* 0x00000080 */
#define AF_GET_CRASH_RECORD		7 /* 0x00000080 */
#define AF_LINK_UP			8 /* 0x00000100 */
#define AF_LINK_UP			8 /* 0x00000100 */
#define AF_IRQ_ATTACHED			10 /* 0x00000400 */
#define AF_IRQ_ATTACHED			10 /* 0x00000400 */
#define AF_ISNS_CMD_IN_PROCESS	     12 /* 0x00001000 */
#define AF_DISABLE_ACB_COMPLETE		11 /* 0x00000800 */
#define AF_ISNS_CMD_DONE	     13 /* 0x00002000 */


	unsigned long dpc_flags;
	unsigned long dpc_flags;


@@ -296,6 +297,9 @@ struct scsi_qla_host {
#define DPC_AEN				9 /* 0x00000200 */
#define DPC_AEN				9 /* 0x00000200 */
#define DPC_GET_DHCP_IP_ADDR		15 /* 0x00008000 */
#define DPC_GET_DHCP_IP_ADDR		15 /* 0x00008000 */


	struct Scsi_Host *host; /* pointer to host data */
	uint32_t tot_ddbs;

	uint16_t	iocb_cnt;
	uint16_t	iocb_cnt;
	uint16_t	iocb_hiwat;
	uint16_t	iocb_hiwat;


@@ -344,6 +348,7 @@ struct scsi_qla_host {
	uint32_t firmware_version[2];
	uint32_t firmware_version[2];
	uint32_t patch_number;
	uint32_t patch_number;
	uint32_t build_number;
	uint32_t build_number;
	uint32_t board_id;


	/* --- From Init_FW --- */
	/* --- From Init_FW --- */
	/* init_cb_t *init_cb; */
	/* init_cb_t *init_cb; */
@@ -363,7 +368,6 @@ struct scsi_qla_host {


	/* --- From GetFwState --- */
	/* --- From GetFwState --- */
	uint32_t firmware_state;
	uint32_t firmware_state;
	uint32_t board_id;
	uint32_t addl_fw_state;
	uint32_t addl_fw_state;


	/* Linux kernel thread */
	/* Linux kernel thread */
@@ -414,6 +418,8 @@ struct scsi_qla_host {
	uint16_t aen_out;
	uint16_t aen_out;
	struct aen aen_q[MAX_AEN_ENTRIES];
	struct aen aen_q[MAX_AEN_ENTRIES];


	struct ql4_aen_log aen_log;/* tracks all aens */

	/* This mutex protects several threads to do mailbox commands
	/* This mutex protects several threads to do mailbox commands
	 * concurrently.
	 * concurrently.
	 */
	 */
@@ -585,10 +591,4 @@ static inline void ql4xxx_unlock_drvr(struct scsi_qla_host *a)
#define FLUSH_DDB_CHANGED_AENS	 1
#define FLUSH_DDB_CHANGED_AENS	 1
#define RELOGIN_DDB_CHANGED_AENS 2
#define RELOGIN_DDB_CHANGED_AENS 2


#include "ql4_version.h"
#include "ql4_glbl.h"
#include "ql4_dbg.h"
#include "ql4_inline.h"


#endif	/*_QLA4XXX_H */
#endif	/*_QLA4XXX_H */