1*7836SJohn.Forte@Sun.COM /* 2*7836SJohn.Forte@Sun.COM * CDDL HEADER START 3*7836SJohn.Forte@Sun.COM * 4*7836SJohn.Forte@Sun.COM * The contents of this file are subject to the terms of the 5*7836SJohn.Forte@Sun.COM * Common Development and Distribution License (the "License"). 6*7836SJohn.Forte@Sun.COM * You may not use this file except in compliance with the License. 7*7836SJohn.Forte@Sun.COM * 8*7836SJohn.Forte@Sun.COM * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9*7836SJohn.Forte@Sun.COM * or http://www.opensolaris.org/os/licensing. 10*7836SJohn.Forte@Sun.COM * See the License for the specific language governing permissions 11*7836SJohn.Forte@Sun.COM * and limitations under the License. 12*7836SJohn.Forte@Sun.COM * 13*7836SJohn.Forte@Sun.COM * When distributing Covered Code, include this CDDL HEADER in each 14*7836SJohn.Forte@Sun.COM * file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15*7836SJohn.Forte@Sun.COM * If applicable, add the following below this CDDL HEADER, with the 16*7836SJohn.Forte@Sun.COM * fields enclosed by brackets "[]" replaced with your own identifying 17*7836SJohn.Forte@Sun.COM * information: Portions Copyright [yyyy] [name of copyright owner] 18*7836SJohn.Forte@Sun.COM * 19*7836SJohn.Forte@Sun.COM * CDDL HEADER END 20*7836SJohn.Forte@Sun.COM */ 21*7836SJohn.Forte@Sun.COM /* 22*7836SJohn.Forte@Sun.COM * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 23*7836SJohn.Forte@Sun.COM * Use is subject to license terms. 24*7836SJohn.Forte@Sun.COM */ 25*7836SJohn.Forte@Sun.COM 26*7836SJohn.Forte@Sun.COM 27*7836SJohn.Forte@Sun.COM 28*7836SJohn.Forte@Sun.COM #include "sun_fc.h" 29*7836SJohn.Forte@Sun.COM #include "Trace.h" 30*7836SJohn.Forte@Sun.COM 31*7836SJohn.Forte@Sun.COM /** 32*7836SJohn.Forte@Sun.COM * @memo Entry points for the V2 API 33*7836SJohn.Forte@Sun.COM * @postcondition entrypoints contains the function pointers to this API 34*7836SJohn.Forte@Sun.COM * @return HBA_STATUS_OK if entrypoints updated 35*7836SJohn.Forte@Sun.COM * @param entrypoints The user-allocated buffer to store the API 36*7836SJohn.Forte@Sun.COM * 37*7836SJohn.Forte@Sun.COM */ HBA_RegisterLibraryV2(PHBA_ENTRYPOINTSV2 entrypoints)38*7836SJohn.Forte@Sun.COMHBA_STATUS HBA_RegisterLibraryV2(PHBA_ENTRYPOINTSV2 entrypoints) { 39*7836SJohn.Forte@Sun.COM Trace log("HBA_RegisterLibrary"); 40*7836SJohn.Forte@Sun.COM entrypoints->GetVersionHandler = Sun_fcGetVersion; 41*7836SJohn.Forte@Sun.COM entrypoints->LoadLibraryHandler = Sun_fcLoadLibrary; 42*7836SJohn.Forte@Sun.COM entrypoints->FreeLibraryHandler = Sun_fcFreeLibrary; 43*7836SJohn.Forte@Sun.COM entrypoints->GetNumberOfAdaptersHandler = Sun_fcGetNumberOfAdapters; 44*7836SJohn.Forte@Sun.COM entrypoints->GetAdapterNameHandler = Sun_fcGetAdapterName; 45*7836SJohn.Forte@Sun.COM entrypoints->OpenAdapterHandler = Sun_fcOpenAdapter; 46*7836SJohn.Forte@Sun.COM entrypoints->CloseAdapterHandler = Sun_fcCloseAdapter; 47*7836SJohn.Forte@Sun.COM entrypoints->GetAdapterAttributesHandler = Sun_fcGetAdapterAttributes; 48*7836SJohn.Forte@Sun.COM entrypoints->GetAdapterPortAttributesHandler = 49*7836SJohn.Forte@Sun.COM Sun_fcGetAdapterPortAttributes; 50*7836SJohn.Forte@Sun.COM entrypoints->GetPortStatisticsHandler = Sun_fcGetPortStatistics; 51*7836SJohn.Forte@Sun.COM entrypoints->GetDiscoveredPortAttributesHandler = 52*7836SJohn.Forte@Sun.COM Sun_fcGetDiscoveredPortAttributes; 53*7836SJohn.Forte@Sun.COM entrypoints->GetPortAttributesByWWNHandler = Sun_fcGetPortAttributesByWWN; 54*7836SJohn.Forte@Sun.COM entrypoints->SendCTPassThruHandler = Sun_fcSendCTPassThru; 55*7836SJohn.Forte@Sun.COM entrypoints->RefreshInformationHandler = Sun_fcRefreshInformation; 56*7836SJohn.Forte@Sun.COM entrypoints->ResetStatisticsHandler = Sun_fcResetStatistics; 57*7836SJohn.Forte@Sun.COM entrypoints->GetFcpTargetMappingHandler = Sun_fcGetFcpTargetMapping; 58*7836SJohn.Forte@Sun.COM entrypoints->GetFcpPersistentBindingHandler = Sun_fcGetFcpPersistentBinding; 59*7836SJohn.Forte@Sun.COM entrypoints->GetEventBufferHandler = Sun_fcGetEventBuffer; 60*7836SJohn.Forte@Sun.COM entrypoints->SetRNIDMgmtInfoHandler = Sun_fcSetRNIDMgmtInfo; 61*7836SJohn.Forte@Sun.COM entrypoints->GetRNIDMgmtInfoHandler = Sun_fcGetRNIDMgmtInfo; 62*7836SJohn.Forte@Sun.COM entrypoints->SendRNIDHandler = Sun_fcSendRNID; 63*7836SJohn.Forte@Sun.COM entrypoints->ScsiInquiryHandler = Sun_fcSendScsiInquiry; 64*7836SJohn.Forte@Sun.COM entrypoints->ReportLUNsHandler = Sun_fcSendReportLUNs; 65*7836SJohn.Forte@Sun.COM entrypoints->ReadCapacityHandler = Sun_fcSendReadCapacity; 66*7836SJohn.Forte@Sun.COM entrypoints->OpenAdapterByWWNHandler = Sun_fcOpenAdapterByWWN; 67*7836SJohn.Forte@Sun.COM entrypoints->GetFcpTargetMappingV2Handler = Sun_fcGetFcpTargetMappingV2; 68*7836SJohn.Forte@Sun.COM entrypoints->SendCTPassThruV2Handler = Sun_fcSendCTPassThruV2; 69*7836SJohn.Forte@Sun.COM entrypoints->RefreshAdapterConfigurationHandler = 70*7836SJohn.Forte@Sun.COM Sun_fcRefreshAdapterConfiguration; 71*7836SJohn.Forte@Sun.COM entrypoints->GetBindingCapabilityHandler = Sun_fcGetBindingCapability; 72*7836SJohn.Forte@Sun.COM entrypoints->GetBindingSupportHandler = Sun_fcGetBindingSupport; 73*7836SJohn.Forte@Sun.COM entrypoints->SetBindingSupportHandler = Sun_fcSetBindingSupport; 74*7836SJohn.Forte@Sun.COM entrypoints->SetPersistentBindingV2Handler = Sun_fcSetPersistentBindingV2; 75*7836SJohn.Forte@Sun.COM entrypoints->GetPersistentBindingV2Handler = Sun_fcGetPersistentBindingV2; 76*7836SJohn.Forte@Sun.COM entrypoints->RemovePersistentBindingHandler = Sun_fcRemovePersistentBinding; 77*7836SJohn.Forte@Sun.COM entrypoints->RemoveAllPersistentBindingsHandler = 78*7836SJohn.Forte@Sun.COM Sun_fcRemoveAllPersistentBindings; 79*7836SJohn.Forte@Sun.COM entrypoints->SendRNIDV2Handler = Sun_fcSendRNIDV2; 80*7836SJohn.Forte@Sun.COM entrypoints->ScsiInquiryV2Handler = Sun_fcScsiInquiryV2; 81*7836SJohn.Forte@Sun.COM entrypoints->ScsiReportLUNsV2Handler = Sun_fcScsiReportLUNsV2; 82*7836SJohn.Forte@Sun.COM entrypoints->ScsiReadCapacityV2Handler = Sun_fcScsiReadCapacityV2; 83*7836SJohn.Forte@Sun.COM entrypoints->GetVendorLibraryAttributesHandler = 84*7836SJohn.Forte@Sun.COM Sun_fcGetVendorLibraryAttributes; 85*7836SJohn.Forte@Sun.COM entrypoints->RemoveCallbackHandler = Sun_fcRemoveCallback; 86*7836SJohn.Forte@Sun.COM entrypoints->RegisterForAdapterAddEventsHandler = 87*7836SJohn.Forte@Sun.COM Sun_fcRegisterForAdapterAddEvents; 88*7836SJohn.Forte@Sun.COM entrypoints->RegisterForAdapterEventsHandler = 89*7836SJohn.Forte@Sun.COM Sun_fcRegisterForAdapterEvents; 90*7836SJohn.Forte@Sun.COM entrypoints->RegisterForAdapterPortEventsHandler = 91*7836SJohn.Forte@Sun.COM Sun_fcRegisterForAdapterPortEvents; 92*7836SJohn.Forte@Sun.COM entrypoints->RegisterForAdapterPortStatEventsHandler = 93*7836SJohn.Forte@Sun.COM Sun_fcRegisterForAdapterPortStatEvents; 94*7836SJohn.Forte@Sun.COM entrypoints->RegisterForTargetEventsHandler = Sun_fcRegisterForTargetEvents; 95*7836SJohn.Forte@Sun.COM entrypoints->RegisterForLinkEventsHandler = Sun_fcRegisterForLinkEvents; 96*7836SJohn.Forte@Sun.COM entrypoints->SendRLSHandler = Sun_fcSendRLS; 97*7836SJohn.Forte@Sun.COM entrypoints->SendRPLHandler = Sun_fcSendRPL; 98*7836SJohn.Forte@Sun.COM entrypoints->SendRPSHandler = Sun_fcSendRPS; 99*7836SJohn.Forte@Sun.COM entrypoints->SendSRLHandler = Sun_fcSendSRL; 100*7836SJohn.Forte@Sun.COM entrypoints->SendLIRRHandler = Sun_fcSendLIRR; 101*7836SJohn.Forte@Sun.COM entrypoints->GetFC4StatisticsHandler = Sun_fcGetFC4Statistics; 102*7836SJohn.Forte@Sun.COM entrypoints->GetFCPStatisticsHandler = Sun_fcGetFCPStatistics; 103*7836SJohn.Forte@Sun.COM return (HBA_STATUS_OK); 104*7836SJohn.Forte@Sun.COM } 105