2N/A * The contents of this file are subject to the terms of the 2N/A * Common Development and Distribution License (the "License"). 2N/A * You may not use this file except in compliance with the License. 2N/A * See the License for the specific language governing permissions 2N/A * and limitations under the License. 2N/A * When distributing Covered Code, include this CDDL HEADER in each 2N/A * If applicable, add the following below this CDDL HEADER, with the 2N/A * fields enclosed by brackets "[]" replaced with your own identifying 2N/A * information: Portions Copyright [yyyy] [name of copyright owner] 2N/A * Copyright 2008 Sun Microsystems, Inc. All rights reserved. 2N/A * Use is subject to license terms. 2N/A * Sun4v Platform specific functions. 2N/A * machine_type == ontario 2N/A#
pragma ident "%Z%%M% %I% %E% SMI" 2N/A * these functions will overlay the symbol table of libprtdiag 2N/A/* local functions */ 2N/A * PCIX_SLOT0 and PCIX_SLOT1 are actually the same path so 2N/A * use the unit address to distinguish the slot number. 2N/A }
else if (
ua[0] ==
'1') {
2N/A * add all io devices under pci in io list 2N/A /* Walk through the children */ 2N/A * Skip PCI and PCIEX devices because they will be processed 2N/A * later in the picl tree walk. 2N/A /* Figure NAC name */ 2N/A * Get the name of this card. If binding_name is found, 2N/A * name will be <nodename>-<binding_name> 2N/A * if compatible prop is found, name will be 2N/A * <nodename>-<compatible> 2N/A /* Get the model of this card */ 2N/A /* Print NAC name */ 2N/A /* Print Parent Path */ 2N/A /* Printf Card Name */ 2N/A /* Print Card Model */ 2N/A * Display all the PCI IO cards on this board. 2N/A char *
fmt =
"%-11s %-5s %-4s %-45s %-25s %-10s";
2N/A "Name",
"Model", 0);
2N/A "---------------------------------------------",
2N/A "-------------------------",
"----------", 0);
2N/A /* Get platform name, if that fails, use ontario name by default */ 2N/A * Call functions based on appropriate platform 2N/A * ---------------------------------------------------------------------------- 2N/A /* NOTE(ARGUNUSED(kstats)) */ 2N/A * Now display the last powerfail time and the fatal hardware 2N/A * reset information. We do this under a couple of conditions. 2N/A * First if the user asks for it. The second is if the user 2N/A * told us to do logging, and we found a system failure. 2N/A * display time of latest powerfail. Not all systems 2N/A * have this capability. For those that do not, this 2N/A /* platform_disp_prom_version(tree); */ 2N/A * add all io devices under pci in io list 2N/A /* Print NAC name */ 2N/A /* Print Device Path */ 2N/A /* Print Compatible # */ 2N/A /* Print Revision */ 2N/A char *
fmt =
"%-20s %-45s %-30s %-9s";
2N/A "========================= HW Revisions " 2N/A "=======================================\n\n"));
2N/A "System PROM revisions:\n" 2N/A "----------------------\n"));
2N/A "IO ASIC revisions:\n" 2N/A "------------------\n"));
2N/A "---------------------------------------------",
2N/A "------------------------------",
2N/A /* Get platform name, if that fails, use ontario name by default */ 2N/A * Walk tree based on platform 2N/A * return the first compatible value 2N/A /* get first string from table */ 2N/A * If it is not an int, uint or byte array prop, return failure 2N/A default:
/* not supported size */