<!--
@page { margin: 0.79in }
TD P { margin-bottom: 0in }
P { margin-bottom: 0.08in }
-->
Continue with other PCI related
modules.
[root@blu-nhm-ep:~]modinfo
| grep PCI
13 fffffffffbbd99e8
b278 - 1 pci_autoconfig (PCI BIOS interface)
36 fffffffff78a2000
9520 183 1 npe (Host to PCIe nexus driver)
37 fffffffff78ab000
5878 - 1 pcihp (PCI nexus hotplug support)
39 fffffffff78b1000
8448 - 1 pcie (PCIE: PCI framework)
88 fffffffff7c4e000
4ee0 184 1 pcieb (PCIe to PCI nexus driver)
89 fffffffff7a70000
1ae0 84 1 pci_pci (PCI to PCI bridge nexus driver)
We have completed pci_autoconfig, npe.
Let's go ahead with pcie. The pcie module are compiled from several
source files. You can guess their purpose from the file name.
[allen@blu-devl:uts]find .
-name Makefile.files | xargs grep pcie
./intel/Makefile.files:PCIEB_OBJS
+= pcieb_x86.o
./intel/Makefile.files:PCI_AUTOCONFIG_OBJS
+= pci_autoconfig.o pci_boot.o pcie_nvidia.o \
./common/Makefile.files:PCIE_MISC_OBJS
+= pcie.o pcie_fault.o pcie_hp.o pciehpc.o pcishpc.o pcie_pwr.o
./common/Makefile.files:PCIEB_OBJS
+= pcieb.o
./sparc/Makefile.files:PCIE_MISC_OBJS
+= pcie_sparc.o
./sparc/Makefile.files:PCIEB_OBJS
+= pcieb_sparc.o
./i86pc/Makefile.files:PCIE_MISC_OBJS
+= pcie_acpi.o pciehpc_acpi.o pcie_x86.o
./i86xpv/Makefile.files:PCIE_MISC_OBJS
+= pcie_acpi.o pciehpc_acpi.o pcie_x86.o
[allen@blu-xvm-osol:uts]find
. -name Makefile\* | xargs grep PCIE_MISC_OBJS
./i86pc/pcie/Makefile:OBJECTS =
$(PCIE_MISC_OBJS:%=$(OBJS_DIR)/%) \
./i86pc/pcie/Makefile:LINTS =
$(PCIE_MISC_OBJS:%.o=$(LINTS_DIR)/%.ln) \
./i86pc/Makefile.files:PCIE_MISC_OBJS
+= pcie_acpi.o pciehpc_acpi.o pcie_x86.o
./common/Makefile.files:PCIE_MISC_OBJS
+= pcie.o pcie_fault.o pcie_hp.o pciehpc.o pcishpc.o pcie_pwr.o
./sparc/pcie/Makefile:OBJECTS =
$(PCIE_MISC_OBJS:%=$(OBJS_DIR)/%) \
./sparc/pcie/Makefile:LINTS =
$(PCIE_MISC_OBJS:%.o=$(LINTS_DIR)/%.ln) \
./sparc/Makefile.files:PCIE_MISC_OBJS
+= pcie_sparc.o
./i86xpv/pcie/Makefile:OBJECTS =
$(PCIE_MISC_OBJS:%=$(OBJS_DIR)/%) \
./i86xpv/pcie/Makefile:LINTS =
$(PCIE_MISC_OBJS:%.o=$(LINTS_DIR)/%.ln) \
./i86xpv/Makefile.files:PCIE_MISC_OBJS
+= pcie_acpi.o pciehpc_acpi.o pcie_x86.o
pcie is a misc module, it provides
interface to manipulate a pcie framework. There is no devinfo node
related to this module, but you can find many reference call in other
driver modules, such as npe we have just read.
153 /*
154 * modload support
155 */
156
157 static struct
modlmisc modlmisc|= {
158
|_______&mod_miscops,|__/* Type|of module */
159 |_______"PCI
Express Framework Module"
160 };
161
162 static struct
modlinkage modlinkage = {
163 |_______MODREV_1,
164
|_______(void|__*)&modlmisc,
165 |_______NULL
166 };
All the related files are stored under
usr/src/uts/common/io/pciex/ and intel/io/pciex/.
[allen@blu-devl:uts]find
./common/io/pciex/
./common/io/pciex/
./common/io/pciex/pcie.c
./common/io/pciex/hotplug
./common/io/pciex/hotplug/pcishpc.c
./common/io/pciex/hotplug/pcie_hp.c
./common/io/pciex/hotplug/pciehpc.c
./common/io/pciex/pcie_fault.c
./common/io/pciex/pcieb.h
./common/io/pciex/pcie_pwr.c
./common/io/pciex/pcieb.conf
./common/io/pciex/pcieb.c
[allen@blu-xvm-osol:uts]find
intel/io/pciex/ -name \*.c
intel/io/pciex/pcie_nvidia.c
(part of pci_autoconfig)
intel/io/pciex/hotplug/pciehpc_acpi.c
intel/io/pciex/pcieb_x86.c
intel/io/pciex/pcie_acpi.c
Objcet File
|
Function
|
pcie.o
|
The module definition, pcie main framework
|
pcie_fault.o
|
PCI/PCIe IO fabric errors handling
|
pcie_hp.o
|
Common hotplug code that is used by Standard PCIe and PCI
HotPlug Controller code.
|
pciehpc.o
|
Standard PCI Express HotPlug functionality that is compatible
with the PCI Express ver 1.1 specification.
|
pcishpc.o
|
PCI HotPlug functionality that is compatible with the PCI SHPC
specification 1.x.
|
pci_pwr.o
|
The power management functionality for pci express switch and
pci express-to-
pci/pci-x bridge.
|
pcie_acpi.o
|
PCIe ACPI interfaces.
|
pciehpc_acpi.o
|
ACPI interface related functions used in PCIEHPC driver module.
|
pcie_x86.o
|
Platform related PCIe functions.
|
I won't dive into each object.
分享到:
相关推荐
**SourceInsight是一款强大的源代码阅读和编辑工具,尤其在编程和软件开发领域中被广泛使用。它提供了丰富的功能,包括语法高亮、代码跳转、自动完成等,极大地提升了程序员的工作效率。Monokai主题是其中一种广受...
源洞察(Source Insight)是一款广泛使用的源代码阅读和分析工具,尤其受到程序员和软件开发者们的喜爱。它提供了强大的代码导航、查找、语法高亮等功能,帮助用户理解和探索复杂的代码库。然而,在处理UTF-8编码的...
In file included from /GDB/insight-6.8-1/tk/unix/../generic/tkInt.h:21, from /GDB/insight-6.8-1/tk/unix/../generic/tk3d.h:18, from /GDB/insight-6.8-1/tk/unix/../generic/tk3d.c:16: /GDB/insight-6.8-1...
2. **配置Source Insight**: 打开Source Insight,进入“Tools”菜单,选择“External Tools...”。在这里,我们需要新建一个工具配置,指定PC-lint的可执行文件路径,以及需要传递给PC-lint的参数,如输入文件、...
### Source Insight 中集成 PC-Lint 的详细步骤及注意事项 #### 一、概述 在软件开发过程中,静态代码分析工具能够帮助开发者发现潜在的错误和不规范的编程习惯,从而提高代码质量。PC-Lint 是一款知名的静态代码...
Source Insight是一款广受欢迎的源代码阅读和分析工具,尤其在软件开发领域中,它以其强大的代码导航、搜索和理解功能而备受赞誉。然而,对于处理包含非英文字符,特别是中文字符的UTF-8编码文件时,原生的Source ...
幸运的是,我们有了“sourceinsight-3.5-window7-64-汉化”这个资源,它为SourceInsight 3.5在Windows 7 64位系统上提供了汉化支持。 首先,我们需要了解SourceInsight 3.5的基本功能。它支持多种编程语言,包括C/...
Astyle集成到SourceInsight指导说明 Astyle是一个编码格式化程序,它可以将代码格式化成统一的风格,从而提高代码的可读性和维护性。本文将指导您如何将Astyle集成到SourceInsight中,以便更好地管理代码的风格。 ...
"Linux Ubuntu下安装Source Insight" Linux Ubuntu下安装Source Insight是指在Ubuntu操作系统下安装Source Insight软件,从而实现在Linux平台下使用Source Insight编辑和阅读源码。本文将详细介绍如何在Ubuntu下...
Source Insight 3是一款广受欢迎的源代码阅读器和编辑器,尤其在软件开发领域中,它为程序员提供了强大的代码浏览、分析和编辑功能。对于处理各种编码格式的源代码文件,Source Insight 3表现出了良好的兼容性,其中...
使用 Wine 安装 Source Insight 标题: 使用 Wine 安装 Source Insight 描述: 在 Ubuntu 系统中使用 Wine 安装 Source Insight 标签: Wine, Source Insight 部分内容: Wine 是一个在 Linux 平台上运行 Windows ...
最初发布在看雪论坛:...用法 1. 安装原版软件:Version 4.0.0084 - Feb 26, 2017 ...2. 替换原主程序:sourceinsight4.exe 3. 导入授权文件(Import a new license file):si4.csdn.lic
在IT行业中,源代码阅读和分析工具Source Insight是一款广受欢迎的软件,特别是在C、C++、Java等编程语言的开发和维护中。然而,对于中文支持的问题,Source Insight 3.5版本曾经存在一些困扰用户的局限性,尤其是当...
**Source Insight 4.0与Solarized-Dark主题详解** Source Insight是一款强大的源代码阅读、分析和编辑工具,尤其在编程领域中广受欢迎。它以其高效的语言智能、强大的搜索功能和自定义配置能力赢得了程序员的喜爱。...
在探讨“Source Insight 3.5 序列号”这一主题时,首先需要明确的是,序列号(serial number)通常是指软件开发商为了控制软件的分发与使用而提供的一种授权方式。通过序列号,可以验证用户是否拥有使用该软件的合法...
《Source Insight 4.0.86.0 安装及使用详解》 Source Insight是一款深受程序员喜爱的源代码分析和编辑工具,以其强大的代码浏览、查找和智能提示功能著称。本文将详细介绍如何安装Source Insight 4.0.86.0版本,并...
在IT行业,特别是在软件开发领域,Source Insight 是一个经常被使用到的源代码查看工具。它主要被软件开发者用于阅读、修改、重构代码以及查看定义和引用等功能。熟练使用 Source Insight 的快捷键能够显著提高开发...
Quicker宏添加到SI中,演示quicker的部分宏的作用效果。 5. Macro: AutoInsertTraceInfoInBuf: 自动插入追踪信息缓存 6. Macro: ComentLine: 注释行 7. Macro: CreateNewHeaderFile: 创造新的头文件 ...
### 让Source Insight支持AT&T汇编语法高亮 #### 背景介绍 Source Insight是一款功能强大的编辑器,能够帮助开发者高效地进行代码编写、分析及管理等工作。它不仅支持多种编程语言,还能通过自定义配置来扩展对特定...
SourceInsight是一款强大的源代码分析和浏览工具,尤其在C/C++、Java和C#等编程语言中广泛应用。它提供了一种高效的方式来查看、搜索、理解和编辑源代码,深受程序员喜爱。版本4.0.86.0是SourceInsight的一个特定...