openbmc开发17:layer中文件介绍和使用

本文深入探讨openbmc的layer结构,包括最简单的layer组成和完整layer的目录结构。介绍了bblayers.conf.sample、layer.conf和local.conf.sample等关键配置文件的用途,讲解了如何配置layer以适配不同厂商的BMC和SOC。重点讨论了meta-phosphor、meta-aspeed和meta-openpower等layer的作用,强调了在openbmc开发中理解和修改layer的重要性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

openbmc中已经有许多厂商board的layer,每个厂商的layer都有所区别,因为每个厂商所使用的soc以及硬件外设不尽相同。要熟练创建自己的layer或者修改layer,就需要了解对layer的架构,本节内容主要介绍layer的架构。

1 最简单的layer

1.1 目录

最简单的layer只需要一个conf文件夹即可,如下图所示:

meta-master         #一般对应是厂商文件夹。有些厂商有多个机型或者使用多种BMC的soc,会在该文件夹下建立meta-xxx的文件夹。

meta-bmc              #对应一款soc或者某种型号服务器的BMC

        conf                #bmc机型的配置文件

                bblayers.conf.sample        #该文件指明编译那些需要的核心layer

                conf-notes.txt                        #内容是固定的“Common targets are: obmc-phosphor-image”,指定bitbake编译镜像使用的cmd

                layer.conf                                #指定添加自己board配置的layer名、配置文件名后缀、优先级、兼容性等,一般可以copy一个对照修改

                local.conf.sample                #配置文件,基本都是固定的宏参数,一般该文件中指定机型、image类型等等,优先级较高

        machine                                #机型配置文件夹

                bmc.cfg                        #bmc机型的配置,一般包括指定soc、内核、uboot、以及应用程序等
    注:

        1、meta-master厂商文件下的文件一般包括readme使用说明文件、COPY的许可文件、LICENSE证书、OWNERS所有者和recipes的配置说明文件。

        2、conf文件夹下的文件,在第一次执行编译时(插入环境变量cmd),会将该目录下的文件copy到build/conf下,并去掉文件名中的“.sample”。

        3、bblayers.conf.sample文件中,使用“##OEROOT##”,该标识会被替换成openbmc所在的目录,也就是生成build/conf/bblayers.conf文件中使用的绝对路径。可以在local.conf.sample中去掉“##OEROOT##”,直接使用绝对路径,不过一般为了可移植性,不建议这么操作。

1.2 文件内容说明

1.2.1 bblayers.conf.sample

bblayer中主要是提供需要编译的layer以及移除时的layer,具体如下图所示。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值