9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * CDDL HEADER START
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * The contents of this file are subject to the terms of the
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * Common Development and Distribution License (the "License").
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * You may not use this file except in compliance with the License.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * See the License for the specific language governing permissions
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * and limitations under the License.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * When distributing Covered Code, include this CDDL HEADER in each
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * If applicable, add the following below this CDDL HEADER, with the
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * fields enclosed by brackets "[]" replaced with your own identifying
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * information: Portions Copyright [yyyy] [name of copyright owner]
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * CDDL HEADER END
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * Copyright 2009 Sun Microsystems, Inc. All rights reserved.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * Use is subject to license terms.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor * Retrieves the statistics for a specified port.phy on an adapter
9e39c5ba00a55fa05777cc94b148296af305e135Bill TaylorHBA_STATUS Sun_sasGetPhyStatistics(HBA_HANDLE handle,
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor HBA_UINT32 port, HBA_UINT32 phy, SMHBA_PHYSTATISTICS *pStatistics) {
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor const char ROUTINE[] = "Sun_sasGetPhyStatistics";
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor /* Validate the arguments */
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor "NULL Phy Statistics buffer of phyIndex: %08lx", phy);
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor "NULL SAS Phy Statistics buffer of phyIndex: %08lx", phy);
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor if ((hba_ptr = Retrieve_Sun_sasHandle(handle)) == NULL) {
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor "Invalid HBA handler %08lx of phyIndex: %08lx",
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor /* Check for stale data */
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor "Verify Adapter failed for phyIndex: %08lx", phy);
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor if (phy >= hba_port_ptr->port_attributes.PortSpecificAttribute.
9e39c5ba00a55fa05777cc94b148296af305e135Bill Taylor log(LOG_DEBUG, ROUTINE, "Invalid phy index %08lx", phy);
return (HBA_STATUS_ERROR_ILLEGAL_INDEX);
sizeof (SMHBA_SASPHYSTATISTICS));
sizeof (path));
if (charptr) {
errno = 0;
return (HBA_STATUS_ERROR);
return (HBA_STATUS_ERROR);
return (HBA_STATUS_ERROR);
return (HBA_STATUS_ERROR);
return (HBA_STATUS_ERROR);
return (HBA_STATUS_ERROR);
return (HBA_STATUS_OK);