Files @ bd21c8aa7237
Branch filter:

Location: vmkdrivers/vmkdrivers/src_9/drivers/scsi/aacraid2/fwdebug.h

unknown
ESXi-6.0.0b
/*
 *	Adaptec AAC series RAID controller driver
 *
 * Copyright (c) 2004-2007 Adaptec, Inc. (aacraid@adaptec.com)
 *
 * 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, 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.
 *
 * You should have received a copy of the GNU General Public License
 * along with this program; see the file COPYING.  If not, write to
 * the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.
 *
 */

#ifndef PRINT_BUFFER_SIZE

#define PRINT_BUFFER_SIZE     512       /* Debugging print buffer size */

#define HBA_FLAGS_DBG_FLAGS_MASK         0x0000ffff  /* Mask for debug flags */
#define HBA_FLAGS_DBG_KERNEL_PRINT_B     0x00000001  /* Kernel Debugger Print */
#define HBA_FLAGS_DBG_FW_PRINT_B         0x00000002  /* Firmware Debugger Print */
#define HBA_FLAGS_DBG_FUNCTION_ENTRY_B   0x00000004  /* Function Entry Point */
#define HBA_FLAGS_DBG_FUNCTION_EXIT_B    0x00000008  /* Function Exit */
#define HBA_FLAGS_DBG_ERROR_B            0x00000010  /* Error Conditions */
#define HBA_FLAGS_DBG_INIT_B             0x00000020  /* Init Prints */
#define HBA_FLAGS_DBG_OS_COMMANDS_B      0x00000040  /* OS Command Info */
#define HBA_FLAGS_DBG_SCAN_B             0x00000080  /* Device Scan */
#define HBA_FLAGS_DBG_COALESCE_B         0x00000100  /* Coalescing Queueing flags */
#define HBA_FLAGS_DBG_IOCTL_COMMANDS_B   0x00000200  /* IOCTL Command Info */
#define HBA_FLAGS_DBG_SYNC_COMMANDS_B    0x00000400  /* SYNC Command Info */
#define HBA_FLAGS_DBG_COMM_B             0x00000800  /* Comm Info */
#define HBA_FLAGS_DBG_CSMI_COMMANDS_B    0x00001000  /* CSMI Command Info */
#define HBA_FLAGS_DBG_AIF_B              0x00001000  /* Aif Info */

#define FW_DEBUG_STR_LENGTH_OFFSET       0x00
#define FW_DEBUG_FLAGS_OFFSET            0x04
#define FW_DEBUG_BLED_OFFSET             0x08
#define FW_DEBUG_FLAGS_NO_HEADERS_B      0x01 

int aac_get_fw_debug_buffer(struct aac_dev *);
void aac_fw_printf(struct aac_dev *, unsigned long, const char *, ...);
void aac_fw_print_mem(struct aac_dev *, unsigned long, u8 *, int);

#define	CT_GET_LOG_SIZE		189
struct aac_get_log_size {
	__le32	command;	/* VM_ContainerConfig & ST_OK response */
	__le32	type;		/* CT_GET_LOG_SIZE */
	__le32	index;
	__le32	size;
	__le32	count;
};

#define CT_GET_NVLOG_ENTRY	57
struct aac_get_nvlog_entry {
	__le32	command;	/* VM_ContainerConfig & ST_OK response */
	__le32	type;		/* CT_GET_NVLOG_ENTRY */
	__le32	status;		/* CT_OK response */
	__le32	index;
	__le32	count;
	__le32	parm3;
	__le32	parm4;
	__le32	parm5;
	u8	data[512-sizeof(__le32)*8-sizeof(struct aac_fibhdr)]; /* 448 */
};

#endif