OurBMC experts say | Issue 4: Introduction to domestic BMC firmware development based on Feitenglong E2000

Column introduction: "OurBMC Experts Talk" is an online lecture column carefully planned by the OurBMC community. It invites experts in BMC-related fields to discuss the development trends, challenges and opportunities of BMC full-stack technology. Whether you are a beginner or an experienced practitioner, "OurBMC Experts Say" will provide you with a valuable platform for learning and communication.

Welcome everyone to pay attention to "OurBMC Celebrities Say", listen to the wisdom of the gurus, and jointly promote the progress and development of BMC full-stack technology!

Character introduction in this issue: Wang Yazhou, manager of the firmware product department of Kunlun Techno (Beijing) Technology Co., Ltd., and head of the Kunlun BMC team. Graduated from the School of Computer Science at Beihang University, he has been engaged in firmware development for 17 years. He has participated in the development of many key engineering projects including the National "Nuclear High-Tech Foundation" and the Industrial Development Fund, and participated in the formulation of multiple BMC firmware industry and group standards.

The open source community supports the rapid and healthy development of the domestic BMC industry

As an indispensable out-of-band management system for servers, the BMC (Baseboard Management Controller) system assumes the important responsibility of remote centralized operation, maintenance, management, and monitoring of servers. It is the central nervous system for server operation. The system mainly consists of two parts: BMC chip and BMC firmware. Among them, the BMC chip, as a carrier of computing power, carries the operation of BMC firmware, and the BMC firmware plays a key control program role in realizing various out-of-band management functions.

For a long time, the core software and hardware technologies of BMC systems have been mainly concentrated in the hands of a few manufacturers, such as Aspeed's AST 2400\2500\2600 series BMC chips (from Xinhua Technology Co., Ltd. in Taiwan) and AMI's MegaRack Solutions composed of a series of BMC firmware (American company Ammann) occupy a dominant position in the global BMC market.

随着我国信息技术应用创新产业的蓬勃发展,这一局面得以改观。自 2016 年起,昆仑太科公司在 OpenBMC 的基础上研发出昆仑 BMC 固件产品,成功突破了国产 BMC 固件核心技术瓶颈,并不断迭代升级,目前已被广泛应用,累计装机量已达数十万台套。至 2022 年,飞腾公司又推出了与AST系列最新产品相媲美的飞腾腾珑E2000S/D/Q 系列芯片,有力地满足了 BMC 系统日益增长的应用需求,标志着国产 BMC 系统取得了显著的技术进步。

Entering 2023, Feiteng has taken the lead in establishing China's first open source BMC root community - OurBMC Community. It is committed to creating an independent, controllable, technologically advanced full-stack BMC software and hardware technology ecosystem, and joins hands with all parties to jointly Promote the independent and rapid development of domestic BMC technology. Relying on domestic BMC chips and open source BMC firmware, relevant companies and technology enthusiasts will be able to more easily build BMC systems with basic functions, and conduct in-depth technical verification and secondary development on this basis. The birth of China's open source BMC root community has undoubtedly injected new vitality into the development of domestic BMC technology and industry, providing broad development space and unprecedented opportunities.

Challenges facing open source BMC

Compared with closed commercial BMC solutions, open source BMC has developed more rapidly due to its openness and extensive participation, and has now become one of the core trends in the evolution of BMC technology. However, directly transforming open source BMC into large-scale market application products requires facing a series of severe challenges such as insufficient technological maturity, difficulty in ensuring product quality, and building a service system.

First, the original state of open source BMC often cannot fully adapt to the needs of large-scale deployment. The core focus of the open source community is not commercial applications. Most of its open source codes are mainly functional verification and preliminary implementation. Therefore, it may be difficult to meet the high standards of commercial application scenarios in terms of functional integrity, security, and stability. For example, for functional modules such as RAID management, screen recording when the system crashes, SNMP Agent integration, CPLD and PSU firmware update mechanism, BMC web security protection, BMC firmware backup and recovery, the current open source community has not yet provided complete support. Therefore, filling the gaps in key capabilities of open source BMC should become an important part of the future continuous improvement and development planning of the open source community.

Secondly, open source BMC has natural shortcomings in technical support and service guarantee. As a complex management system, BMC will inevitably encounter various failures and problems during actual large-scale operations. However, open source projects often lack a dedicated professional team to ensure the stable and continuous operation of user systems. When a sudden failure occurs, without the immediate response and proper handling of professional maintenance personnel, the normal operation of the system will be seriously affected. In view of the core position of the BMC system in server management and control, any potential problems may cause the entire information system to paralyze, causing immeasurable losses.

Furthermore, open source BMC is difficult to meet the highly customized optimization needs of various industries. The practical application of server management is closely related to the server deployment environment and business needs. Different industries and user groups have ever-changing specific requirements for server management, and different brands, models, and even platforms have different device characteristics. From basic factory default account and password settings, to complex Redfish interface standard personalized configurations, and even diversified functional requirements and hardware design solutions, all put forward extremely high requirements for the in-depth customized development and optimization of BMC systems, especially BMC firmware. . Although the code provided by the open source community covers basic common functions, it is difficult to cope with such large and detailed customized needs.

To sum up, in most cases, it is difficult for open source BMC to be directly put into the application of commercial large-scale products. Professional manufacturers need to carry out in-depth product transformation and optimization to make it meet the strict requirements required for commercial applications. standard.

Kunlun BMC’s technical roadmap

As one of the first leading companies to develop BMC firmware products based on Feiteng Tenglong E2000 series chips, Kunlun Tech chooses a technical route that directly uses the self-developed Kunlun BMC source code as the basis. The source code is carefully based on the OpenBMC community code. Improved. During the entire architecture construction process, thanks to the strong support of Feiteng Company, we obtained key technical resources including the uboot boot loader, Linux kernel and a full set of compilation tool chains.

Faced with the inherent differences between Feitenglong E2000 chips and AST series chips, the Kunlun Technic team reconstructed from scratch a series of basic functional components that are closely integrated with the hardware, such as KVM virtualization technology, virtual media support and other core modules , all of which have undergone in-depth customization and innovative research and development.

After building a solid basic framework, we are faced with a more challenging task - deepening functional development and comprehensively improving productization levels. As a company that has been in the field of firmware technology research and development for nearly two decades, Kunlun Tech has accumulated a profound professional background, covering a wide range of detailed BMC functional requirements and customized needs of various industries. It is based on this accumulation that we have refined a unique and rigorous BMC functional specification and quality standard system to guide our every step of decision-making and design in the in-depth development and productization process of Kunlun BMC.

At this stage, we pay special attention to team building and management level, and have put forward almost stringent requirements for building a BMC R&D team with both large-scale development capabilities and mature experience to ensure that it can steadily achieve efficient collaboration and rigorous control. Promote various functional development and product optimization work, and ultimately create high-quality BMC firmware products that meet market demand and are competitive.

Product BMC adaptation development process

Based on the open source BMC firmware code, a server BMC system suitable for large-scale commercial deployment is built on the Feitenglong E2000 hardware platform. The entire development process can be divided into six key links:

1. Hardware platform in-depth adaptation: This stage includes in-depth integration and adaptation with various key subsystems and components of the server, including but not limited to sensor data reading and analysis, chassis cooling fan control, and precision temperature control. Core functions include policy formulation, power on/off management, field replaceable unit (FRU) information acquisition, network communication function optimization, and establishment of automatic firmware update mechanism.

2. BIOS linkage function development and adaptation: This part focuses on strengthening the collaborative work with the server BIOS system, specifically developing and implementing the SOL remote serial port viewing function, exporting the complete log record of the server serial port with one click, and monitoring the POST status code in real time. And provide accurate alarms for CPU, memory and PCIe faults. At the same time, it is also necessary to display the detailed information of the server hardware and flexibly control the BIOS menu configuration items.

3. Special development of customized functions: Targeted function development is carried out in response to the diverse non-standardized requirements put forward by customers, such as supporting query of detailed information of specific models of RAID cards, refined control of server positioning lights and alarm indicator status, and customized backplane access. Permissions and operation processes, one-click collection of specific types of auxiliary diagnostic data, and expanded support for the use of large-capacity storage media such as SD cards to meet customers' special application needs.

4. Customized interface expansion and optimization: At the web, IPMI, Redfish, SNMP and other management interface levels, we must not only improve the standard functions, but also customize and develop IPMI OEM commands and Redfish extended interfaces according to customer needs, and enhance SNMP Trap to support reporting Specific types of alarm information, while enabling the Web interface to flexibly display customized information content that meets customer needs.

5. Comprehensive quality management: Build a strict version testing and problem repair process, covering multiple dimensions such as functional verification, security performance evaluation, stress testing, etc., aiming to ensure that the BMC system delivered to users remains efficient and stable in large and complex application scenarios. operating status.

6. Supporting documents and practical tools: Provide detailed user manuals to guide operations, write detailed IPMI, Redfish, and SNMP interface application guides, equipped with efficient BMC firmware online update tools, and special tool kits optimized for production line operations, all-round Ensure that users have sufficient technical support during installation, debugging, maintenance and upgrades.

As an IBV manufacturer, Kunlun Tech has provided E2000 BMC firmware technical services to dozens of domestic manufacturers, supporting various firmware versions including Xinchuang and industry customization. We are honored to participate in the OurBMC community and contribute to the development of domestic BMC.

I wish the OurBMC community will develop better and better!

Linus took matters into his own hands to prevent kernel developers from replacing tabs with spaces. His father is one of the few leaders who can write code, his second son is the director of the open source technology department, and his youngest son is a core contributor to open source. Huawei: It took 1 year to convert 5,000 commonly used mobile applications Comprehensive migration to Hongmeng Java is the language most prone to third-party vulnerabilities. Wang Chenglu, the father of Hongmeng: open source Hongmeng is the only architectural innovation in the field of basic software in China. Ma Huateng and Zhou Hongyi shake hands to "remove grudges." Former Microsoft developer: Windows 11 performance is "ridiculously bad " " Although what Laoxiangji is open source is not the code, the reasons behind it are very heartwarming. Meta Llama 3 is officially released. Google announces a large-scale restructuring
{{o.name}}
{{m.name}}

Guess you like

Origin my.oschina.net/ourbmc/blog/11054449