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 2008 Sun Microsystems, Inc. All rights reserved. 23 * Use is subject to license terms. 24 */ 25 26 27 28 #include "sun_fc.h" 29 #include "Trace.h" 30 31 /** 32 * @memo Entry points for the V2 API 33 * @postcondition entrypoints contains the function pointers to this API 34 * @return HBA_STATUS_OK if entrypoints updated 35 * @param entrypoints The user-allocated buffer to store the API 36 * 37 */ 38 HBA_STATUS HBA_RegisterLibraryV2(PHBA_ENTRYPOINTSV2 entrypoints) { 39 Trace log("HBA_RegisterLibrary"); 40 entrypoints->GetVersionHandler = Sun_fcGetVersion; 41 entrypoints->LoadLibraryHandler = Sun_fcLoadLibrary; 42 entrypoints->FreeLibraryHandler = Sun_fcFreeLibrary; 43 entrypoints->GetNumberOfAdaptersHandler = Sun_fcGetNumberOfAdapters; 44 entrypoints->GetAdapterNameHandler = Sun_fcGetAdapterName; 45 entrypoints->OpenAdapterHandler = Sun_fcOpenAdapter; 46 entrypoints->CloseAdapterHandler = Sun_fcCloseAdapter; 47 entrypoints->GetAdapterAttributesHandler = Sun_fcGetAdapterAttributes; 48 entrypoints->GetAdapterPortAttributesHandler = 49 Sun_fcGetAdapterPortAttributes; 50 entrypoints->GetPortStatisticsHandler = Sun_fcGetPortStatistics; 51 entrypoints->GetDiscoveredPortAttributesHandler = 52 Sun_fcGetDiscoveredPortAttributes; 53 entrypoints->GetPortAttributesByWWNHandler = Sun_fcGetPortAttributesByWWN; 54 entrypoints->SendCTPassThruHandler = Sun_fcSendCTPassThru; 55 entrypoints->RefreshInformationHandler = Sun_fcRefreshInformation; 56 entrypoints->ResetStatisticsHandler = Sun_fcResetStatistics; 57 entrypoints->GetFcpTargetMappingHandler = Sun_fcGetFcpTargetMapping; 58 entrypoints->GetFcpPersistentBindingHandler = Sun_fcGetFcpPersistentBinding; 59 entrypoints->GetEventBufferHandler = Sun_fcGetEventBuffer; 60 entrypoints->SetRNIDMgmtInfoHandler = Sun_fcSetRNIDMgmtInfo; 61 entrypoints->GetRNIDMgmtInfoHandler = Sun_fcGetRNIDMgmtInfo; 62 entrypoints->SendRNIDHandler = Sun_fcSendRNID; 63 entrypoints->ScsiInquiryHandler = Sun_fcSendScsiInquiry; 64 entrypoints->ReportLUNsHandler = Sun_fcSendReportLUNs; 65 entrypoints->ReadCapacityHandler = Sun_fcSendReadCapacity; 66 entrypoints->OpenAdapterByWWNHandler = Sun_fcOpenAdapterByWWN; 67 entrypoints->GetFcpTargetMappingV2Handler = Sun_fcGetFcpTargetMappingV2; 68 entrypoints->SendCTPassThruV2Handler = Sun_fcSendCTPassThruV2; 69 entrypoints->RefreshAdapterConfigurationHandler = 70 Sun_fcRefreshAdapterConfiguration; 71 entrypoints->GetBindingCapabilityHandler = Sun_fcGetBindingCapability; 72 entrypoints->GetBindingSupportHandler = Sun_fcGetBindingSupport; 73 entrypoints->SetBindingSupportHandler = Sun_fcSetBindingSupport; 74 entrypoints->SetPersistentBindingV2Handler = Sun_fcSetPersistentBindingV2; 75 entrypoints->GetPersistentBindingV2Handler = Sun_fcGetPersistentBindingV2; 76 entrypoints->RemovePersistentBindingHandler = Sun_fcRemovePersistentBinding; 77 entrypoints->RemoveAllPersistentBindingsHandler = 78 Sun_fcRemoveAllPersistentBindings; 79 entrypoints->SendRNIDV2Handler = Sun_fcSendRNIDV2; 80 entrypoints->ScsiInquiryV2Handler = Sun_fcScsiInquiryV2; 81 entrypoints->ScsiReportLUNsV2Handler = Sun_fcScsiReportLUNsV2; 82 entrypoints->ScsiReadCapacityV2Handler = Sun_fcScsiReadCapacityV2; 83 entrypoints->GetVendorLibraryAttributesHandler = 84 Sun_fcGetVendorLibraryAttributes; 85 entrypoints->RemoveCallbackHandler = Sun_fcRemoveCallback; 86 entrypoints->RegisterForAdapterAddEventsHandler = 87 Sun_fcRegisterForAdapterAddEvents; 88 entrypoints->RegisterForAdapterEventsHandler = 89 Sun_fcRegisterForAdapterEvents; 90 entrypoints->RegisterForAdapterPortEventsHandler = 91 Sun_fcRegisterForAdapterPortEvents; 92 entrypoints->RegisterForAdapterPortStatEventsHandler = 93 Sun_fcRegisterForAdapterPortStatEvents; 94 entrypoints->RegisterForTargetEventsHandler = Sun_fcRegisterForTargetEvents; 95 entrypoints->RegisterForLinkEventsHandler = Sun_fcRegisterForLinkEvents; 96 entrypoints->SendRLSHandler = Sun_fcSendRLS; 97 entrypoints->SendRPLHandler = Sun_fcSendRPL; 98 entrypoints->SendRPSHandler = Sun_fcSendRPS; 99 entrypoints->SendSRLHandler = Sun_fcSendSRL; 100 entrypoints->SendLIRRHandler = Sun_fcSendLIRR; 101 entrypoints->GetFC4StatisticsHandler = Sun_fcGetFC4Statistics; 102 entrypoints->GetFCPStatisticsHandler = Sun_fcGetFCPStatistics; 103 return (HBA_STATUS_OK); 104 } 105