193c20f26SSukumar Swaminathan /* 293c20f26SSukumar Swaminathan * CDDL HEADER START 393c20f26SSukumar Swaminathan * 493c20f26SSukumar Swaminathan * The contents of this file are subject to the terms of the 593c20f26SSukumar Swaminathan * Common Development and Distribution License (the "License"). 693c20f26SSukumar Swaminathan * You may not use this file except in compliance with the License. 793c20f26SSukumar Swaminathan * 8*8f23e9faSHans Rosenfeld * You can obtain a copy of the license at 9*8f23e9faSHans Rosenfeld * http://www.opensource.org/licenses/cddl1.txt. 1093c20f26SSukumar Swaminathan * See the License for the specific language governing permissions 1193c20f26SSukumar Swaminathan * and limitations under the License. 1293c20f26SSukumar Swaminathan * 1393c20f26SSukumar Swaminathan * When distributing Covered Code, include this CDDL HEADER in each 1493c20f26SSukumar Swaminathan * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 1593c20f26SSukumar Swaminathan * If applicable, add the following below this CDDL HEADER, with the 1693c20f26SSukumar Swaminathan * fields enclosed by brackets "[]" replaced with your own identifying 1793c20f26SSukumar Swaminathan * information: Portions Copyright [yyyy] [name of copyright owner] 1893c20f26SSukumar Swaminathan * 1993c20f26SSukumar Swaminathan * CDDL HEADER END 2093c20f26SSukumar Swaminathan */ 2193c20f26SSukumar Swaminathan 2293c20f26SSukumar Swaminathan /* 23*8f23e9faSHans Rosenfeld * Copyright (c) 2004-2011 Emulex. All rights reserved. 2482527734SSukumar Swaminathan * Use is subject to license terms. 2593c20f26SSukumar Swaminathan */ 2693c20f26SSukumar Swaminathan 2793c20f26SSukumar Swaminathan #ifndef _EMLXS_DEVICE_H 2893c20f26SSukumar Swaminathan #define _EMLXS_DEVICE_H 2993c20f26SSukumar Swaminathan 3093c20f26SSukumar Swaminathan #ifdef __cplusplus 3193c20f26SSukumar Swaminathan extern "C" { 3293c20f26SSukumar Swaminathan #endif 3393c20f26SSukumar Swaminathan 3493c20f26SSukumar Swaminathan /* 3593c20f26SSukumar Swaminathan * This is the global device driver control structure 3693c20f26SSukumar Swaminathan */ 3793c20f26SSukumar Swaminathan 3893c20f26SSukumar Swaminathan #ifndef EMLXS_HBA_T 3993c20f26SSukumar Swaminathan typedef struct emlxs_hba emlxs_hba_t; 4093c20f26SSukumar Swaminathan #endif 4193c20f26SSukumar Swaminathan 4293c20f26SSukumar Swaminathan /* This structure must match the one in ./mdb/msgblib.c */ 43291a2b48SSukumar Swaminathan typedef struct emlxs_device 44291a2b48SSukumar Swaminathan { 4593c20f26SSukumar Swaminathan uint32_t hba_count; 4693c20f26SSukumar Swaminathan emlxs_hba_t *hba[MAX_FC_BRDS]; 4793c20f26SSukumar Swaminathan kmutex_t lock; 4893c20f26SSukumar Swaminathan 4993c20f26SSukumar Swaminathan time_t drv_timestamp; 50291a2b48SSukumar Swaminathan clock_t log_timestamp; 51291a2b48SSukumar Swaminathan emlxs_msg_log_t *log[MAX_FC_BRDS]; 52291a2b48SSukumar Swaminathan 53291a2b48SSukumar Swaminathan #ifdef DUMP_SUPPORT 54291a2b48SSukumar Swaminathan emlxs_file_t *dump_txtfile[MAX_FC_BRDS]; 55291a2b48SSukumar Swaminathan emlxs_file_t *dump_dmpfile[MAX_FC_BRDS]; 56291a2b48SSukumar Swaminathan emlxs_file_t *dump_ceefile[MAX_FC_BRDS]; 57291a2b48SSukumar Swaminathan #endif /* DUMP_SUPPORT */ 5893c20f26SSukumar Swaminathan 5993c20f26SSukumar Swaminathan } emlxs_device_t; 6093c20f26SSukumar Swaminathan 6193c20f26SSukumar Swaminathan #ifdef __cplusplus 6293c20f26SSukumar Swaminathan } 6393c20f26SSukumar Swaminathan #endif 6493c20f26SSukumar Swaminathan 6593c20f26SSukumar Swaminathan #endif /* _EMLXS_DEVICE_H */ 66