'\" te .\" Copyright (c) 2006, Sun Microsystems, Inc. All Rights Reserved. .TH cfgadm_pci 1M "2009 年 8 月 27 日" "SunOS 5.11" "系统管理命令" .SH 名称 cfgadm_pci \- PCI、CompactPCI 以及 PCI Express 热插拔硬件专用 cfgadm 命令 .SH 用法概要 .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\fI function\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\fI hardware_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| \fI ap_type\fR] .fi .SH 描述 .sp .LP PCI 硬件专用库 \fB/usr/lib/cfgadm/pci.so.1\fR 支持通过 \fBcfgadm\fR 命令(请参见 \fBcfgadm\fR(1M))在支持热插拔的系统中相应可热插拔的插槽中热插拔 PCI 和 CompactPCI 适配卡的功能。该库不支持 PCI Express 热插拔适配卡或标准的 PCI 热插拔适配卡,这些适配卡由另外一个库支持(请参见 \fBcfgadm_shp\fR(1M))。除了该文档中标注的部分,PCI 与 CompactPCI 之间的热插拔管理模式保持不变。 .sp .LP 对于 PCI 热插拔,每个特定的 PCI 总线上的热插拔插槽由该 PCI 总线上的连接点表示。 .sp .LP 一个连接点由一个插口和一个插卡组成。PCI 热插拔中的 \fBreceptacle\fR(插口)通常指物理的热插拔插槽,\fBoccupant\fR(插卡)指插入到插槽中的 PCI 适配卡。 .sp .LP 连接点通过 \fBap_id\fR 命名。有两种类型的 \fBap_id\fR:逻辑 ap_id 和物理 ap_id。物理 \fBap_id\fR 基于物理路径名,即 \fB/devices/pci@1/hpc0_slot3\fR,而逻辑 \fBap_id\fR 是更短、更加用户友好的名称。对于 PCI 热插拔插槽,逻辑 \fBap_id\fR 的名称通常为对应的热插拔控制器驱动程序名称加上逻辑槽号,即 \fBpci0:hpc0slot1\fR,也就是说,PCI nexus 驱动程序、名为 \fBhpc\fR 的热插拔控制器驱动程序以及槽号 \fB1\fR。PCI 热插拔的 \fBap_type\fR 为 \fBpci\fR。 .sp .LP 请注意,\fBap_type\fR 与 \fBType\fR(类型)字段中的信息不同。 .sp .LP 有关热插拔过程的详细说明,请参见\fI《Managing Devices in Oracle Solaris 11.2》\fR。 .SH 选项 .sp .LP 支持以下选项: .sp .ne 2 .mk .na \fB\fB-c \fR\fIfunction\fR\fR .ad .sp .6 .RS 4n 以下 \fIfunction\fR 支持 PCI 热插拔插槽: .sp .ne 2 .mk .na \fBconfigure(配置)\fR .ad .sp .6 .RS 4n 将 PCI 设备配置在 Solaris 使用的插槽中。 .RE .sp .ne 2 .mk .na \fBconnect\fR .ad .sp .6 .RS 4n 将插槽与 PCI 总线相连。 .RE .sp .ne 2 .mk .na \fBdisconnect\fR .ad .sp .6 .RS 4n 断开插槽与 PCI 总线之间的连接。 .RE .sp .ne 2 .mk .na \fBinsert\fR .ad .sp .6 .RS 4n 不支持。 .RE .sp .ne 2 .mk .na \fBremove\fR .ad .sp .6 .RS 4n 不支持。 .RE .sp .ne 2 .mk .na \fBunconfigure(取消配置)\fR .ad .sp .6 .RS 4n 将 PCI 设备的资源从系统中逻辑移除。 .RE .RE .sp .ne 2 .mk .na \fB\fB-f\fR\fR .ad .sp .6 .RS 4n 不支持。 .RE .sp .ne 2 .mk .na \fB\fB-h\fR \fIap_id\fR | \fIap_type\fR\fR .ad .sp .6 .RS 4n 列显 PCI 热插拔专用帮助消息。 .RE .sp .ne 2 .mk .na \fB\fB-l\fR \fIlist\fR\fR .ad .sp .6 .RS 4n 列出 PCI 热插拔插槽的值。 .RE .sp .ne 2 .mk .na \fB\fB-o\fR \fIhardware_options\fR\fR .ad .sp .6 .RS 4n 当前没有定义任何硬件专用选项。 .RE .sp .ne 2 .mk .na \fB\fB-s\fR \fIlisting_options\fR\fR .ad .sp .6 .RS 4n 与通用的 \fBcfgadm\fR(1M) 相同。 .RE .sp .ne 2 .mk .na \fB\fB-t\fR \fIap_id\fR\fR .ad .sp .6 .RS 4n 该命令只适用于支持插槽测试功能的平台。 .RE .sp .ne 2 .mk .na \fB\fB-v\fR\fR .ad .sp .6 .RS 4n 在详细模式下执行。 .sp 如果 \fB-v\fR 选项与 \fB-l\fR 选项一起使用,\fBcfgadm\fR 命令输出有关连接点的信息。有关位于 PCI Express 分层结构中的 PCI 热插拔连接点的详细信息,请参见 \fBcfgadm_shp\fR(1M)。如果 PCI 热插拔连接点不在 PCI Express 分层结构中,\fBInformation\fR(信息)字段为该插槽的系统标签(如果有)。该字符串可从该插槽的总线节点的 \fBslot-name\fR 属性中获取。\fBType\fR(类型)字段中的信息可使用 \fBv\fR 选项列显,也可不使用该选项列显。插卡的 \fBType\fR(类型)字段描述有关插槽的信息。有以下两个可能值: .sp .ne 2 .mk .na \fBunknown(未知)\fR .ad .sp .6 .RS 4n 该插槽为空。如果该插槽中安装了卡,表明该卡未配置或卡上的设备未安装驱动程序。 .RE .sp .ne 2 .mk .na \fB\fIsubclass\fR/\fIboard\fR\fR .ad .sp .6 .RS 4n 该插槽中的卡是一个单功能或多功能设备。 .sp \fIsubclass\fR 是表示设备子类代码的字符串,例如 SCSI、\fBethernet\fR、\fBpci-isa\fR 等。如果该卡是一个多功能设备,则列显 \fBMULT\fR。 .sp \fIboard\fR 是表示设备的板类型的字符串。例如,hp 是表示 PCI 热插拔适配器的字符串,hs 是表示热交换板的字符串,nhs 是表示非热交换 cPCI 板的字符串,bhs 是表示基本热交换 cPCI 板的字符串,fhs 是表示完全热交换 cPCI 板的字符串。 .sp 大多数配有多个设备的 PCI 卡并不是多功能设备,但这些 PCI 卡是作为其后面的任意设备的 PCI 桥实现的。在这些情况下,显示的子类为 PCI 桥的子类。最常见的 PCI 桥为通用 PCI-PCI 桥 \fBpci-pci\fR 或半透明的 PCI 桥 \fBstpci\fR。 .RE .RE .sp .ne 2 .mk .na \fB\fB-x\fR \fIhardware_function\fR\fR .ad .sp .6 .RS 4n 执行硬件专用函数。通常,这些硬件专用函数不应更改插口或插卡的状态。 .sp 所支持的 \fIhardware_function\fR 如下: .sp .ne 2 .mk .na \fBenable_slot | disable_slot\fR .ad .sp .6 .RS 4n 更改插槽状态并在重新引导后仍保留插槽状态。只有选定的平台在重新引导后才能保留状态。 .sp \fBenable_slot\fR 允许在引导时将硬件添加到热插拔插槽。 .sp \fBdisable_slot\fR 禁止在引导时将硬件添加到热插拔插槽。如果插槽被禁用,该插槽的状态显示为不可用。 .RE .sp .ne 2 .mk .na \fBenable_autoconfig | disable_autoconfig\fR .ad .sp .6 .RS 4n 更改插槽上插卡的自动配置的功能。只有支持自动配置的平台才支持该功能。 .sp \fBenable_autoconfig\fR 启用插槽自动配置的功能。 .sp \fBdiable_autoconfig\fR 禁用插槽自动配置的功能。 .sp 利用 PCI Express 平台上的警示按钮以及 CompactPCI 平台上的卡入/弹出锁存器可以完成自动配置。如果自动配置被禁用,警示按钮或锁存器装置不能用于配置插槽上的插卡。 .RE .sp .ne 2 .mk .na \fBled=[\fIled_sub_arg\fR],mode=[\fImode_sub_arg\fR]\fR .ad .sp .6 .RS 4n 如果不带子参数,列显当前 LED 指示灯设置的列表。如果带有子参数,则设置插槽的专用 LED 指示灯的模式。 .sp 将 \fIled_sub_arg\fR 指定为 \fBfault\fR、\fBpower\fR、\fBattn\fR 或 \fBactive\fR。 .sp 将 \fImode_sub_arg\fR 指定为 \fBon\fR、\fBoff\fR 或 \fBblink\fR。 .sp 更改 LED 指示灯的状态不会更改插口或插卡的状态。通常,LED 指示灯由热插拔控制器控制,无需用户干预。使用该命令用于测试目的。 .sp \fB注意:\fR更改 LED 指示灯的状态可能歪曲插卡或插口的状态。 .sp 以下命令列显 LED 指示灯的值: .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 以下命令开启故障 LED 指示灯: .sp .in +2 .nf example# \fBcfgadm -x led=fault,mode=on pci0:hpc0_slot1\fR .fi .in -2 .sp 以下命令关闭电源 LED 指示灯: .sp .in +2 .nf example# \fBcfgadm -x led=power,mode=off pci0:hpc0_slot0\fR .fi .in -2 .sp 以下命令将\fB活动的\fR LED 指示灯设置为闪烁状态以指示该插槽的位置: .sp .in +2 .nf example# \fBcfgadm -x led=active,mode=on pci0:hpc0_slot3\fR .fi .in -2 .sp .RE .RE .SH 示例 .LP \fB示例 1 \fR列显每个插槽的值 .sp .LP 以下命令列显每个插槽的值: .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 \fB示例 2 \fR替换卡 .sp .LP 以下命令列出所有支持 DR 的连接点: .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 以下命令取消配置卡并使卡断电: .sp .in +2 .nf example# \fBcfgadm -c disconnect cpci_slot4\fR .fi .in -2 .sp .sp .LP 该更改可通过输入以下命令验证: .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 现在可以交换卡了。以下命令使卡接电并配置卡: .sp .in +2 .nf example# \fBcfgadm -c configure cpci_slot4\fR .fi .in -2 .sp .sp .LP 该更改可通过输入以下命令验证: .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 文件 .sp .ne 2 .mk .na \fB\fB/usr/lib/cfgadm/pci.so.1\fR\fR .ad .sp .6 .RS 4n PCI 热插拔硬件专用库。 .RE .SH 属性 .sp .LP 有关下列属性的说明,请参见 \fBattributes\fR(5): .sp .sp .TS tab() box; cw(2.75i) |cw(2.75i) lw(2.75i) |lw(2.75i) . 属性类型属性值 _ 可用性system/library .TE .SH 另请参见 .sp .LP \fBcfgadm\fR(1M)、\fBcfgadm_shp\fR(1M)、\fBconfig_admin\fR(3CFGADM)、\fBlibcfgadm\fR(3LIB)、\fBattributes\fR(5) .sp .LP \fI《Managing Devices in Oracle Solaris 11.2》\fR