1 /* 2 * CDDL HEADER START 3 * 4 * The contents of this file are subject to the terms of the 5 * Common Development and Distribution License (the "License"). 6 * You may not use this file except in compliance with the License. 7 * 8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9 * or http://www.opensolaris.org/os/licensing. 10 * See the License for the specific language governing permissions 11 * and limitations under the License. 12 * 13 * When distributing Covered Code, include this CDDL HEADER in each 14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15 * If applicable, add the following below this CDDL HEADER, with the 16 * fields enclosed by brackets "[]" replaced with your own identifying 17 * information: Portions Copyright [yyyy] [name of copyright owner] 18 * 19 * CDDL HEADER END 20 */ 21 /* 22 * Copyright 2009 Sun Microsystems, Inc. All rights reserved. 23 * Use is subject to license terms. 24 */ 25 26 #ifndef _PRINTATTRS_H 27 #define _PRINTATTRS_H 28 29 #ifdef __cplusplus 30 extern "C" { 31 #endif 32 33 #include <sasinfo.h> 34 35 typedef enum { 36 PHY_STATE, 37 PHY_SPEED 38 } phystat_type; 39 40 typedef struct state_string { 41 int key; 42 char *value; 43 } SAS_STATE; 44 45 extern SAS_STATE porttype_string[]; 46 extern SAS_STATE portstate_string[]; 47 48 #define MAXINDENT 64 49 50 char *getHBAStatus(HBA_STATUS hbaStatus); 51 uint64_t wwnConversion(uchar_t *wwn); 52 void printHBAInfo(SMHBA_ADAPTERATTRIBUTES *attrs, int pflag, int numberOfPorts, 53 const char *adapterName); 54 void printHBAPortInfo(SMHBA_PORTATTRIBUTES *port, 55 SMHBA_ADAPTERATTRIBUTES *attrs, int pflag); 56 void printHBAPortPhyInfo(SMHBA_SAS_PHY *phyinfo); 57 void printHBAPortPhyStatistics(SMHBA_SASPHYSTATISTICS *phystat); 58 extern void 59 printLogicalUnit(int pflag, SMHBA_TARGETMAPPING *map); 60 extern int 61 printOSDeviceNameInfo(discoveredDevice *devListWalk, boolean_t verbose); 62 extern int 63 printTargetPortInfo(targetPortList_t *TPListWalk, int pflag); 64 extern char *getStateString(HBA_UINT32 key, SAS_STATE *stat_string); 65 extern char *getIndentSpaces(int number); 66 extern char *getDTypeString(uchar_t dType); 67 68 #ifdef __cplusplus 69 } 70 #endif 71 72 #endif /* _PRINTATTRS_H */ 73