`
javasee
  • 浏览: 977336 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Solaris Source Insight: PCI bus driver moduls - misc/pcicfg module

阅读更多

<!-- @page { margin: 0.79in } P { margin-bottom: 0.08in } -->

Implementation of misc/pcicfg

This module provids below two interfaces to configure/unconfigure pci devices (include the children).

540 /*

541 * This entry point is called to configure a device (and

542 * all its children) on the given bus. It is called when

543 * a new device is added to the PCI domain. This routine

544 * will create the device tree and program the devices

545 * registers.

546 */

547 int

548 pcicfg_configure(dev_info_t *devi, uint_t device, uint_t function,

549 pcicfg_flags_t flags)

In pcicfg_configure(), the following procedures followed:

  1. probe the device (include children), create devinfo node for each PCI device, and bind it to driver if below configuration is successful.

  2. Allocate and program the resourses for both bridges and leaf devices.

  3. Update standard and specific properties.

1422 /*

1423 * This will turn resources allocated by pcicfg_configure()

1424 * and remove the device tree from the Hotplug Connection (CN)

1425 * and below. The routine assumes the devices have their

1426 * drivers detached.

1427 */

1428 int

1429 pcicfg_unconfigure(dev_info_t *devi, uint_t device, uint_t function,

1430 pcicfg_flags_t flags)

In pcicfg_unconfigure(), the following procedures followed:

  1. Offline the devinfo nodes, that means detaching the device driver and preventing it from reattaching.

  2. Free up resources the devices consumed, disable the device and tear down the devinfo node (include children).

By the way, this should be a bug in code.

code review comments:

585 |_______|_______if ((function != PCICFG_ALL_FUNC) && (function != func))

586 |_______|_______|_______goto next;

...

657 next:

658 |_______|_______/*

659 |_______|_______ * Determine if ARI Forwarding should be enabled.

660 |_______|_______ */

661 |_______|_______if (func == 0) {

662 |_______|_______|_______if ((pcie_ari_supported(devi)

663 |_______|_______|_______ == PCIE_ARI_FORW_SUPPORTED) &&

664 |_______|_______|_______ (pcie_ari_device(new_device) == PCIE_ARI_DEVICE)) {

new_device could be used here before initialized.

分享到:
评论

相关推荐

    libX11-1.5.0.tar.gz 的tar包

    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...

    SourceInsight 完美的配色方案 theme-Monokai 主题

    **SourceInsight是一款强大的源代码阅读和编辑工具,尤其在编程和软件开发领域中被广泛使用。它提供了丰富的功能,包括语法高亮、代码跳转、自动完成等,极大地提升了程序员的工作效率。Monokai主题是其中一种广受...

    使用Wine安装Source Insight

    使用 Wine 安装 Source Insight 标题: 使用 Wine 安装 Source Insight 描述: 在 Ubuntu 系统中使用 Wine 安装 Source Insight 标签: Wine, Source Insight 部分内容: Wine 是一个在 Linux 平台上运行 Windows ...

    source insight 3.5 UTF-8中文乱码插件_sourceinsight3.5_utf-8_插件补丁_中文乱码_

    源洞察(Source Insight)是一款广泛使用的源代码阅读和分析工具,尤其受到程序员和软件开发者们的喜爱。它提供了强大的代码导航、查找、语法高亮等功能,帮助用户理解和探索复杂的代码库。然而,在处理UTF-8编码的...

    linux Ubuntu下安装 Source insight

    "Linux Ubuntu下安装Source Insight" Linux Ubuntu下安装Source Insight是指在Ubuntu操作系统下安装Source Insight软件,从而实现在Linux平台下使用Source Insight编辑和阅读源码。本文将详细介绍如何在Ubuntu下...

    Astyle集成到sourceinsight指导说明

    Astyle集成到SourceInsight指导说明 Astyle是一个编码格式化程序,它可以将代码格式化成统一的风格,从而提高代码的可读性和维护性。本文将指导您如何将Astyle集成到SourceInsight中,以便更好地管理代码的风格。 ...

    pc-lint用于sourceinsight上静态代码检测

    2. **配置Source Insight**: 打开Source Insight,进入“Tools”菜单,选择“External Tools...”。在这里,我们需要新建一个工具配置,指定PC-lint的可执行文件路径,以及需要传递给PC-lint的参数,如输入文件、...

    source insight 中集成pclint

    ### Source Insight 中集成 PC-Lint 的详细步骤及注意事项 #### 一、概述 在软件开发过程中,静态代码分析工具能够帮助开发者发现潜在的错误和不规范的编程习惯,从而提高代码质量。PC-Lint 是一款知名的静态代码...

    source insight 4.0安装包

    Source Insight是一个面向项目开发的程序编辑器和代码浏览器,它拥有内置的对C/C++, C#和Java等程序的分析。能分析源代码并在工作的同时动态维护它自己的符号数据库,并自动显示有用的上下文信息。 Source Insight...

    source insight UTF-8插件

    Source Insight是一款广受欢迎的源代码阅读和分析工具,尤其在软件开发领域中,它以其强大的代码导航、搜索和理解功能而备受赞誉。然而,对于处理包含非英文字符,特别是中文字符的UTF-8编码文件时,原生的Source ...

    sourceinsight-3.5-window7-64-汉化

    幸运的是,我们有了“sourceinsight-3.5-window7-64-汉化”这个资源,它为SourceInsight 3.5在Windows 7 64位系统上提供了汉化支持。 首先,我们需要了解SourceInsight 3.5的基本功能。它支持多种编程语言,包括C/...

    Source Insight 3支持Utf-8

    Source Insight 3是一款广受欢迎的源代码阅读器和编辑器,尤其在软件开发领域中,它为程序员提供了强大的代码浏览、分析和编辑功能。对于处理各种编码格式的源代码文件,Source Insight 3表现出了良好的兼容性,其中...

    Linux下安装source insight

    "Linux下安装source insight" Linux下安装source insight教程可以分为..../winewrapper /root/.wine/driver_c/source_insight/Insight3.exe ``` 通过以上步骤,我们可以成功安装和配置source insight在Linux平台上。

    Source Insight 4.0.0084 Patched下载

    最初发布在看雪论坛:...用法 1. 安装原版软件:Version 4.0.0084 - Feb 26, 2017 ...2. 替换原主程序:sourceinsight4.exe 3. 导入授权文件(Import a new license file):si4.csdn.lic

    SourceInsight.zip

    Source Insight是一个功能非常强大的C、C++的代码阅读器,通过工程的管理,Source Insight可实现多文件代码中(C工程或C和ASM的混合工程)的变量、函数的快速定位和搜索,并且对每个打开的源程序(C或C++代码)中的...

    解决source insight3.5不支持中文utf8问题

    在IT行业中,源代码阅读和分析工具Source Insight是一款广受欢迎的软件,特别是在C、C++、Java等编程语言的开发和维护中。然而,对于中文支持的问题,Source Insight 3.5版本曾经存在一些困扰用户的局限性,尤其是当...

    完全卸载wine和Source Insight的方法

    ### 完全卸载Wine和Source Insight的详尽步骤 在Ubuntu环境下,彻底清除不再需要的应用程序,尤其是像Wine和Source Insight这样的工具,有时会变得相当复杂。这是因为Linux系统下的一些应用卸载并不像Windows那样...

    Source Insight 4.0仿Boxy的Solarized-Dark主题

    **Source Insight 4.0与Solarized-Dark主题详解** Source Insight是一款强大的源代码阅读、分析和编辑工具,尤其在编程领域中广受欢迎。它以其高效的语言智能、强大的搜索功能和自定义配置能力赢得了程序员的喜爱。...

    Source Insight 3.5 序列号

    在探讨“Source Insight 3.5 序列号”这一主题时,首先需要明确的是,序列号(serial number)通常是指软件开发商为了控制软件的分发与使用而提供的一种授权方式。通过序列号,可以验证用户是否拥有使用该软件的合法...

    sourceinsight_4.0.86.0-setup.zip

    《Source Insight 4.0.86.0 安装及使用详解》 Source Insight是一款深受程序员喜爱的源代码分析和编辑工具,以其强大的代码浏览、查找和智能提示功能著称。本文将详细介绍如何安装Source Insight 4.0.86.0版本,并...

Global site tag (gtag.js) - Google Analytics