'\" te .\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved. .TH cfgadm_pci 1M "27 Aug 2009" "SunOS 5.11" "System Administration Commands" .SH NAME cfgadm_pci \- PCI, CompactPCI, and PCI Express Hotplug hardware specific commands for cfgadm .SH SYNOPSIS .LP .nf \fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-c\fR \fIfunction\fR \fIap_id\fR [\fIap_id\fR] .fi .LP .nf \fB/usr/sbin/cfgadm\fR [\fB-f\fR] [\fB-y\fR | \fB-n\fR] [\fB-v\fR] [\fB-o\fR \fIhardware_options\fR] \fB-x\fR \fIhardware_function\fR \fIap_id\fR [\fIap_id\fR] .fi .LP .nf \fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-s\fR \fIlisting_options\fR] [\fB-o\fR \fIhardware_options\fR] [\fB-l\fR [\fIap_id\fR | \fIap_type\fR]] .fi .LP .nf \fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIharware_options\fR] \fB-t\fR \fIap_id\fR [\fIap_id\fR] .fi .LP .nf \fB/usr/sbin/cfgadm\fR [\fB-v\fR] [\fB-o\fR \fIhardware_function\fR] \fB-h\fR [\fIap_id\fR| \fIap_type\fR] .fi .SH DESCRIPTION .sp .LP The PCI hardware specific library, \fB/usr/lib/cfgadm/pci.so.1\fR, provides the support for hotplugging PCI and CompactPCI adapter cards into the respective hotpluggable slots in a system that is hotplug capable, through the \fBcfgadm\fR command (see \fBcfgadm\fR(1M)). This library does not include support for PCI Express Hotplug or Standard PCI Hotplug adapter cards, which are provided by a different library (see \fBcfgadm_shp\fR(1M)). Hotplug administrative models between PCI, CompactPCI remain the same except where noted in this document. .sp .LP For PCI Hot Plug, each hotplug slot on a specific PCI bus is represented by an attachment point of that specific PCI bus. .sp .LP An attachment point consist of two parts: a receptacle and an occupant. The \fBreceptacle\fR under PCI Hot Plug is usually referred to as the physical hotpluggable slot; and the \fBoccupant\fR is usually referred to as the PCI adapter card that plugs into the slot. .sp .LP Attachment points are named through \fBap_id\fRs. There are two types of \fBap_id\fRs: logical and physical. The physical \fBap_id\fR is based on the physical pathname, that is, \fB/devices/pci@1/hpc0_slot3\fR, whereas the logical \fBap_id\fR is a shorter, and more user-friendly name. For PCI hotpluggable slots, the logical \fBap_id\fR is usually the corresponding hotplug controller driver name plus the logical slot number, that is, \fBpci0:hpc0slot1\fR; PCI nexus driver, with hotplug controller driver named \fBhpc\fR and slot number \fB1\fR. The \fBap_type\fR for PCI Hot Plug is \fBpci\fR. .sp .LP Note that the \fBap_type\fR is not the same as the information in the \fBType\fR field. .sp .LP See the \fIManaging Devices in Oracle Solaris 11.2\fR for a detailed description of the hotplug procedure. .SH OPTIONS .sp .LP The following options are supported: .sp .ne 2 .mk .na \fB\fB-c\fR \fIfunction\fR\fR .ad .sp .6 .RS 4n The following \fIfunction\fRs are supported for PCI hotpluggable slots: .sp .ne 2 .mk .na \fBconfigure\fR .ad .sp .6 .RS 4n Configure the PCI device in the slot to be used by Solaris. .RE .sp .ne 2 .mk .na \fBconnect\fR .ad .sp .6 .RS 4n Connect the slot to PCI bus. .RE .sp .ne 2 .mk .na \fBdisconnect\fR .ad .sp .6 .RS 4n Disconnect the slot from the PCI bus. .RE .sp .ne 2 .mk .na \fBinsert\fR .ad .sp .6 .RS 4n Not supported. .RE .sp .ne 2 .mk .na \fBremove\fR .ad .sp .6 .RS 4n Not supported. .RE .sp .ne 2 .mk .na \fBunconfigure\fR .ad .sp .6 .RS 4n Logically remove the PCI device's resources from the system. .RE .RE .sp .ne 2 .mk .na \fB\fB-f\fR\fR .ad .sp .6 .RS 4n Not supported. .RE .sp .ne 2 .mk .na \fB\fB-h\fR \fIap_id\fR | \fIap_type\fR\fR .ad .sp .6 .RS 4n Print out PCI Hot Plug-specific help message. .RE .sp .ne 2 .mk .na \fB\fB-l\fR \fIlist\fR\fR .ad .sp .6 .RS 4n List the values of PCI Hot Plug slots. .RE .sp .ne 2 .mk .na \fB\fB-o\fR \fIhardware_options\fR\fR .ad .sp .6 .RS 4n No hardware specific options are currently defined. .RE .sp .ne 2 .mk .na \fB\fB-s\fR \fIlisting_options\fR\fR .ad .sp .6 .RS 4n Same as the generic \fBcfgadm\fR(1M). .RE .sp .ne 2 .mk .na \fB\fB-t\fR \fIap_id\fR\fR .ad .sp .6 .RS 4n This command is only supported on platforms which support testing capability on the slot. .RE .sp .ne 2 .mk .na \fB\fB-v\fR\fR .ad .sp .6 .RS 4n Execute in verbose mode. .sp When the \fB-v\fR option is used with the \fB-l\fR option, the \fBcfgadm\fR command outputs information about the attachment point. For PCI Hotplug attachment points located in a PCI PCI Express hierarchy, see \fBcfgadm_shp\fR(1M) for details. For PCI Hot Plug attachment points not located in a PCI Express hieararchy, the \fBInformation\fR field will be the slot's system label, if any. This string will be obtained from the \fBslot-name\fR property of the slot's bus node. The information in the \fBType\fR field is printed with or without the \fBv\fR option. The occupant \fBType\fR field will describe the contents of the slot. There are 2 possible values: .sp .ne 2 .mk .na \fBunknown\fR .ad .sp .6 .RS 4n The slot is empty. If a card is in the slot, the card is not configured or there is no driver for the device on the card. .RE .sp .ne 2 .mk .na \fB\fIsubclass\fR/\fIboard\fR\fR .ad .sp .6 .RS 4n The card in the slot is either a single-function or multi-function device. .sp \fIsubclass\fR is a string representing the subclass code of the device, for example, SCSI, \fBethernet\fR, \fBpci-isa\fR, and so forth. If the card is a multi-functional device, \fBMULT\fR will get printed instead. .sp \fIboard\fR is a string representing the board type of the device. For example, hp is the string used for a PCI Hot Plug adapter, hs is used for a Hot Swap Board, nhs for a Non\(emHot Swap cPCI Board, bhs for a Basic Hot Swap cPCI Board, and fhs for a Full Hot Swap cPCI Board. .sp Most PCI cards with more than one device are not multi-function devices, but are implemented as a PCI bridge with arbitrary devices behind them. In those cases, the subclass displayed is that of the PCI bridge. Most commonly, the bridges are \fBpci-pci,\fR a generic PCI to PCI bridge or \fBstpci\fR, a semi-transparent PCI bridge. .RE .RE .sp .ne 2 .mk .na \fB\fB-x\fR \fIhardware_function\fR\fR .ad .sp .6 .RS 4n Perform hardware specific function. These hardware specific functions should not normally change the state of a receptacle or occupant. .sp The following \fIhardware_functions\fR are supported: .sp .ne 2 .mk .na \fBenable_slot | disable_slot\fR .ad .sp .6 .RS 4n Change the state of the slot and preserve the state of slot across reboot. Preservation of state across reboot is only supported on select platforms. .sp \fBenable_slot\fR enables the addition of hardware to this slot for hotplugging and at boot time. .sp \fBdisable_slot\fR disables the addition of hardware to this slot for hotplugging and at boot time. When a slot is disabled its condition is shown as unusable. .RE .sp .ne 2 .mk .na \fBenable_autoconfig | disable_autoconfig\fR .ad .sp .6 .RS 4n Change the ability to autoconfigure the occupant of the slot. Only platforms that support auto configuration support this feature. .sp \fBenable_autoconfig\fR enables the ability to autoconfigure the slot. .sp \fBdiable_autoconfig\fR disables the ability to autoconfigure the slot. .sp Autoconfiguration is done through the attention button on the PCI Express platforms and through the injector/ejector latch on the CompactPCI platforms. When autoconfiguration is disabled, the attention button or latch mechanism cannot be used to configure the occupant of the slot. .RE .sp .ne 2 .mk .na \fBled=[\fIled_sub_arg\fR],mode=[\fImode_sub_arg\fR]\fR .ad .sp .6 .RS 4n Without sub-arguments, print a list of the current LED settings. With sub-arguments, set the mode of a specific LED for a slot. .sp Specify \fIled_sub_arg\fR as \fBfault\fR, \fBpower\fR, \fBattn\fR, or \fBactive\fR. .sp Specify \fImode_sub_arg\fR as \fBon\fR, \fBoff\fR or \fBblink\fR. .sp Changing the state of the LED does not change the state of the receptacle or occupant. Normally, the LEDs are controlled by the hotplug controller, no user intervention is necessary. Use this command for testing purposes. .sp \fBCaution:\fR Changing the state of the LED can misrepresent the state of occupant or receptacle. .sp The following command prints the values of LEDs: .sp .in +2 .nf example# \fBcfgadm -x led pci0:hpc0_slot1\fR Ap_Id Led pci0:hpc0_slot1 power=on,fault=off,active=off,attn=off .fi .in -2 .sp The following command turns on the Fault LED: .sp .in +2 .nf example# \fBcfgadm -x led=fault,mode=on pci0:hpc0_slot1\fR .fi .in -2 .sp The following command turns off the Power LED: .sp .in +2 .nf example# \fBcfgadm -x led=power,mode=off pci0:hpc0_slot0\fR .fi .in -2 .sp The following command sets the \fBactive\fR LED to blink to indicate the location of the slot: .sp .in +2 .nf example# \fBcfgadm -x led=active,mode=on pci0:hpc0_slot3\fR .fi .in -2 .sp .RE .RE .SH EXAMPLES .LP \fBExample 1 \fRPrinting out the Value of Each Slot .sp .LP The following command prints out the values of each slot: .sp .in +2 .nf example# \fBcfgadm -l\fR Ap_Id Type Receptacle Occupant Condition c0 scsi-bus connected configured unknown c1 scsi-bus connected unconfigured unknown c2 scsi-bus connected unconfigured unknown cpci_slot1 stpci/fhs connected configured ok cpci_slot2 unknown empty unconfigured unknown cpci_slot4 stpci/fhs connected configured ok cpci_slot5 stpci/fhs connected configured ok .fi .in -2 .sp .LP \fBExample 2 \fRReplacing a Card .sp .LP The following command lists all DR-capable attachment points: .sp .in +2 .nf example# \fBcfgadm\fR Type Receptacle Occupant Condition c0 scsi-bus connected configured unknown c1 scsi-bus connected unconfigured unknown c2 scsi-bus connected unconfigured unknown cpci_slot1 stpci/fhs connected configured ok cpci_slot2 unknown empty unconfigured unknown cpci_slot4 stpci/fhs connected configured ok cpci_slot5 stpci/fhs connected configured ok .fi .in -2 .sp .sp .LP The following command unconfigures and electrically disconnects the card: .sp .in +2 .nf example# \fBcfgadm -c disconnect cpci_slot4\fR .fi .in -2 .sp .sp .LP The change can be verified by entering the following command: .sp .in +2 .nf example# \fBcfgadm cpci_slot4\fR Ap_Id Type Receptacle Occupant Condition cpci_slot4 unknown disconnected unconfigured unknown .fi .in -2 .sp .sp .LP Now the card can be swapped. The following command electrically connects and configures the card: .sp .in +2 .nf example# \fBcfgadm -c configure cpci_slot4\fR .fi .in -2 .sp .sp .LP The change can be verifed by entering the following command: .sp .in +2 .nf example# \fBcfgadm cpci_slot4\fR Ap_Id Type Receptacle Occupant Condition cpci_slot4 stpcipci/fhs connected configured ok .fi .in -2 .sp .SH FILES .sp .ne 2 .mk .na \fB\fB/usr/lib/cfgadm/pci.so.1\fR\fR .ad .sp .6 .RS 4n Hardware specific library for PCI hotplugging. .RE .SH ATTRIBUTES .sp .LP See \fBattributes\fR(5) for descriptions of the following attributes: .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . ATTRIBUTE TYPEATTRIBUTE VALUE _ Availabilitysystem/library .TE .SH SEE ALSO .sp .LP \fBcfgadm\fR(1M), \fBcfgadm_shp\fR(1M), \fBconfig_admin\fR(3CFGADM), \fBlibcfgadm\fR(3LIB), \fBattributes\fR(5) .sp .LP \fIManaging Devices in Oracle Solaris 11.2\fR