<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[wit_yuan的专栏]]></title><description><![CDATA[]]></description><link>https://blog.csdn.net/wit_yuan</link><language>zh-cn</language><generator>https://blog.csdn.net/</generator><copyright><![CDATA[Copyright &copy; wit_yuan]]></copyright><item><title><![CDATA[openbmc mctp i3c适配步骤]]></title><link>https://blog.csdn.net/wit_yuan/article/details/161837006</link><guid>https://blog.csdn.net/wit_yuan/article/details/161837006</guid><author>wit_yuan</author><pubDate>Tue, 16 Jun 2026 10:05:00 +0800</pubDate><description><![CDATA[本文介绍了在Intel OKS平台下，BMC作为I3C从设备如何适配MCTP over I3C的实现方法。主要内容包括：1）关键术语解释，如MDB（Mandatory Data Byte）值为0xAE，DCR（Device Characteristics Register）和BCR（Bus Characteristics Register）的设置；2）适配流程说明，包括BMC作为控制器主节点分配地址后成为MCTP端点，CPU作为总线所有者的角色转换；3）测试验证步骤，展示通过mctp-client工具发送指]]></description><category></category></item><item><title><![CDATA[openbmc 提交linux kernel patch代码(持续更新)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/159996187</link><guid>https://blog.csdn.net/wit_yuan/article/details/159996187</guid><author>wit_yuan</author><pubDate>Fri, 10 Apr 2026 16:55:51 +0800</pubDate><description><![CDATA[本文介绍了基于OpenBMC向Linux内核提交补丁的完整流程。首先需要阅读官方提交规则，然后详细说明了三个关键步骤：1）生成并处理补丁文件；2）配置Git邮箱发送环境（以126邮箱为例）；3）发送补丁给维护者列表。文章还提供了检查补丁格式和维护者的方法，并重点说明了如何跟踪补丁审核状态、正确引用Message-ID进行后续交流，以及处理常见的&quot;no subject&quot;显示问题。最后指出了使用--compose参数时仍需改进的技术细节。]]></description><category></category></item><item><title><![CDATA[openbmc上使用kunit/pytest 测试kernel/应用层 mctp逻辑]]></title><link>https://blog.csdn.net/wit_yuan/article/details/159672159</link><guid>https://blog.csdn.net/wit_yuan/article/details/159672159</guid><author>wit_yuan</author><pubDate>Tue, 31 Mar 2026 17:59:45 +0800</pubDate><description><![CDATA[本文介绍了使用KUnit和pytest分别测试内核层和应用层MCTP功能的方法。对于内核测试，使用Linux 5.15.202和6.19.10版本验证KUnit功能，通过修改路由代码验证测试用例的正确性。应用层测试采用pytest框架，在Ubuntu 24.04环境下成功运行测试。文章详细说明了环境搭建、测试执行和结果验证过程，为MCTP协议栈的单元测试提供了实践参考。]]></description><category></category></item><item><title><![CDATA[openbmc pldm分析]]></title><link>https://blog.csdn.net/wit_yuan/article/details/157299642</link><guid>https://blog.csdn.net/wit_yuan/article/details/157299642</guid><author>wit_yuan</author><pubDate>Mon, 02 Feb 2026 09:57:35 +0800</pubDate><description><![CDATA[OpenBMC PLDM实现分析摘要 本文分析了OpenBMC中PLDM(Platform Level Data Model)的实现方案。重点研究了两个核心仓库：pldm和libpldm，并基于MCTP内核/库作为通信基础。当前实现存在MCTP-PCIE-VDM模块的MTU配置问题(需修正为68)，否则会导致固件升级失败。文章展示了PLDM实现的固件升级和传感器监控功能，包括通过DBus接口查询固件参数和版本信息。固件升级流程遵循OpenBMC文档规范，支持组件回滚机制。分析基于特定版本代码，指出当前Ope]]></description><category></category></item><item><title><![CDATA[openbmc 支持mctp over pcie(三)(支持作为endpoint)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/156754679</link><guid>https://blog.csdn.net/wit_yuan/article/details/156754679</guid><author>wit_yuan</author><pubDate>Wed, 14 Jan 2026 14:23:50 +0800</pubDate><description><![CDATA[本文介绍了在Intel BHS平台上支持MCTP over PCIe端点开发的调试方法。开发基于CodeConstruct和AspeedTech-BMC的开源项目，将内核驱动改为模块形式以便调试。内容包括DTS配置、驱动模块设置步骤，以及如何将BMC配置为端点设备。调试过程涉及内核模块加载、MCTPD启动、参数设置等关键命令，并展示了路由表、地址和邻居信息的测试结果。该方案仅为实验性工作，需注意停止其他使用/dev/aspeed-mctp0接口的应用。]]></description><category></category></item><item><title><![CDATA[openbmc 支持mctp over pcie(二)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/156466133</link><guid>https://blog.csdn.net/wit_yuan/article/details/156466133</guid><author>wit_yuan</author><pubDate>Thu, 08 Jan 2026 17:34:00 +0800</pubDate><description><![CDATA[本文介绍了在OpenBMC系统中实现MCTP over PCIe的社区方案，主要针对AMD CPU和Intel CPU平台。方案基于社区开发的mctpd应用层和内核驱动，通过修改设备树(dts)配置内存区域，并编译Linux内核模块。验证时可通过查看/proc/net/protocols确认MCTP协议支持，使用ip addr命令检查mctppci0网络接口状态。相关代码和文档参考了AspeedTech和CodeConstruct的GitHub仓库。该方案为BMC作为MCTP端点提供了标准化实现方法。]]></description><category></category></item><item><title><![CDATA[openbmc 适配evb-ast2500(Aspeed-Linux sdkv10.00)---(持续更新)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/156193820</link><guid>https://blog.csdn.net/wit_yuan/article/details/156193820</guid><author>wit_yuan</author><pubDate>Tue, 23 Dec 2025 14:16:57 +0800</pubDate><description><![CDATA[本文介绍了基于Aspeed SDK v10.00版本对evb-ast2500平台的适配工作。主要内容包括：1）解决编译过程中出现的libgcrypt函数缺失和固件大小超限问题；2）修改u-boot和Linux配置，调整flash分区映射关系，解决socflash烧录功能被禁用问题；3）修正网络接口配置；4）适配mctp over pcie功能，说明不同平台下BMC与CPU的角色分配。通过修改相关配置文件，最终实现了固件的成功编译和烧录，并验证了系统启动和网络功能。]]></description><category></category></item><item><title><![CDATA[openbmc ikvm实现过程(持续更新)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/154458677</link><guid>https://blog.csdn.net/wit_yuan/article/details/154458677</guid><author>wit_yuan</author><pubDate>Fri, 21 Nov 2025 10:02:39 +0800</pubDate><description><![CDATA[摘要 本文介绍了基于libvncserver的ikvm实现方案。通过修改obmc-ikvm/ikvm_server.cpp配置文件，测试了单独运行ikvm服务的过程，使用TightVNC Viewer成功建立连接并分析了交互数据包。文章还探讨了浏览器端基于@novnc/novnc的实现方式，并提及了Linux内核驱动aspeed-video.c的分析计划。测试结果表明，RealVNC和UltraVNC对Tight编码支持不足，仅TightVNC Viewer能够正常使用该方案。]]></description><category></category></item><item><title><![CDATA[openbmc开发的一些问题点(持续更新)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/152125553</link><guid>https://blog.csdn.net/wit_yuan/article/details/152125553</guid><author>wit_yuan</author><pubDate>Wed, 19 Nov 2025 10:10:57 +0800</pubDate><description><![CDATA[本文总结了DBus开发中的常见问题与注意事项。主要包括：1) match接口数据获取时需注意数据完整性问题；2) match信号数据接收的读取方法示例；3) try-catch异常处理的设计要点；4) 全局变量初始化顺序引发的段错误案例。通过具体代码示例演示了编译顺序导致的shared_ptr初始化问题，并提供了core文件分析方法。这些经验对DBus开发和C++编程具有实际指导意义。]]></description><category></category></item><item><title><![CDATA[linux udp广播数据包实际用例]]></title><link>https://blog.csdn.net/wit_yuan/article/details/154388586</link><guid>https://blog.csdn.net/wit_yuan/article/details/154388586</guid><author>wit_yuan</author><pubDate>Tue, 04 Nov 2025 12:13:55 +0800</pubDate><description><![CDATA[摘要：本文记录了UDP广播数据包在实际应用中的问题分析。提供了服务端和客户端的代码实现，其中服务端使用recvfrom接收广播消息，客户端则负责发送广播数据包。通过setsockopt设置套接字选项实现广播功能，并展示了如何处理接收到的广播数据。测试场景描述了服务端部署在A机器、客户端部署在B机器的情况，为UDP广播通信提供了完整实现示例。]]></description><category></category></item><item><title><![CDATA[openbmc kvm实现一(libvncserver)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/154214622</link><guid>https://blog.csdn.net/wit_yuan/article/details/154214622</guid><author>wit_yuan</author><pubDate>Sat, 01 Nov 2025 00:40:13 +0800</pubDate><description><![CDATA[openbmc 基础kvm]]></description><category></category></item><item><title><![CDATA[openbmc仓库phosphor-bmc-code-mgmt基本逻辑（持续更新）]]></title><link>https://blog.csdn.net/wit_yuan/article/details/152801769</link><guid>https://blog.csdn.net/wit_yuan/article/details/152801769</guid><author>wit_yuan</author><pubDate>Sat, 11 Oct 2025 10:30:31 +0800</pubDate><description><![CDATA[介绍固件升级模块: phosphor-bmc-code-mgmt 的基本逻辑。]]></description><category></category></item><item><title><![CDATA[openbmc与turnkey方案串口流程分析与实现截取串口数据]]></title><link>https://blog.csdn.net/wit_yuan/article/details/140425317</link><guid>https://blog.csdn.net/wit_yuan/article/details/140425317</guid><author>wit_yuan</author><pubDate>Wed, 24 Sep 2025 20:20:58 +0800</pubDate><description><![CDATA[承接上一个部分的的内容打印之后，实际物理串口已经被初始化调用并且被。针对这种情况，用户层面的打印，如果重启应用程序，就会打印到。作为草稿，已经写了很久了，没有公布出来。那么，在用户层数据怎么输出到串口的?1.在初始化串口的前一个阶段的打印。可以看到完成了截取串口数据的功能。2.在初始化串口之后的串口打印。上面有一个重要的路径忽略掉了。作为调试工具，选用搭配的。中的定义和初始化的串口。这个结构体里面只提供了。在用户层，最先访问的是。根据如上代码，可以通过。可以优化以上代码，使用。]]></description><category></category></item><item><title><![CDATA[openbmc 阈值sensor & fru]]></title><link>https://blog.csdn.net/wit_yuan/article/details/149738384</link><guid>https://blog.csdn.net/wit_yuan/article/details/149738384</guid><author>wit_yuan</author><pubDate>Wed, 30 Jul 2025 00:04:22 +0800</pubDate><description><![CDATA[本文介绍了OpenBMC中IPMI传感器的实现机制，主要基于SDKv09.03代码库。文章首先分析了phosphor-host-ipmid项目中的传感器处理流程，重点研究了sensorhandler.cpp文件中的ipmiSensorGetSensorReading函数调用关系。通过追踪代码发现，传感器数据通过D-Bus接口获取，并由Python脚本生成的sensor-gen.cpp文件处理。开发包中使用meson构建系统，通过yaml配置文件定义传感器参数。最后指出实际的yaml配置文件位于meta-ph]]></description><category></category></item><item><title><![CDATA[openbmc 日志系统继续分析(二)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/149388288</link><guid>https://blog.csdn.net/wit_yuan/article/details/149388288</guid><author>wit_yuan</author><pubDate>Thu, 24 Jul 2025 23:48:08 +0800</pubDate><description><![CDATA[摘要： 本文分析了OpenBMC日志系统的架构和实现，重点研究了phosphor-logging、phosphor-sel-logger等核心组件。系统通过D-Bus接口实现日志传递，其中phosphor-sel-logger注册了IpmiSelAdd等方法，并将日志转发给phosphor-logging服务处理。日志系统采用分层设计，包含日志记录、事件监控和IPMI接口等功能模块，通过sdbusplus和boost库实现组件间通信。代码分析展示了日志创建、存储和管理的具体实现过程。]]></description><category></category></item><item><title><![CDATA[openbmc pldmd分析(event事件分析)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/149282388</link><guid>https://blog.csdn.net/wit_yuan/article/details/149282388</guid><author>wit_yuan</author><pubDate>Fri, 11 Jul 2025 22:12:13 +0800</pubDate><description><![CDATA[openbmc PLDM RDE事件获取方法原理]]></description><category></category></item><item><title><![CDATA[ncsi介绍(openbmc角度) + 内核代码分析]]></title><link>https://blog.csdn.net/wit_yuan/article/details/148686541</link><guid>https://blog.csdn.net/wit_yuan/article/details/148686541</guid><author>wit_yuan</author><pubDate>Wed, 18 Jun 2025 00:39:59 +0800</pubDate><description><![CDATA[介绍nc-si的操作介绍]]></description><category></category></item><item><title><![CDATA[openbmc intel pldmd分析(sensor & RDE)]]></title><link>https://blog.csdn.net/wit_yuan/article/details/147493617</link><guid>https://blog.csdn.net/wit_yuan/article/details/147493617</guid><author>wit_yuan</author><pubDate>Fri, 25 Apr 2025 00:18:29 +0800</pubDate><description><![CDATA[openbmc intel-bmc基于pldmd的简单分析。]]></description><category></category></item><item><title><![CDATA[openbmc 日志系统]]></title><link>https://blog.csdn.net/wit_yuan/article/details/147142407</link><guid>https://blog.csdn.net/wit_yuan/article/details/147142407</guid><author>wit_yuan</author><pubDate>Sun, 13 Apr 2025 17:05:58 +0800</pubDate><description><![CDATA[openbmc 添加sel log介绍]]></description><category></category></item><item><title><![CDATA[openbmc中Linux动态库加载注意内容]]></title><link>https://blog.csdn.net/wit_yuan/article/details/146493934</link><guid>https://blog.csdn.net/wit_yuan/article/details/146493934</guid><author>wit_yuan</author><pubDate>Tue, 25 Mar 2025 09:48:51 +0800</pubDate><description><![CDATA[主要讲解加载第三方代码的时候留意重要的结构属性，帮助更好的添加/移植代码库。]]></description><category></category></item></channel></rss>