0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

如何添加自定义单板

瑞萨嵌入式小百科 来源:瑞萨MCU小百科 2025-03-12 14:43 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

14.8如何添加自定义单板

在开发过程中,用户有时需要创建自定义板配置。本节将通过一个实例讲解用户如何创建属于自己的machine,下面以g2l-test.conf为例进行说明。

14.8.1 选择一个类似的machine

复制一个类似的machine文件,并重命名为一个你板子的指定名字,如和g2l-test.conf配置文件。

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/conf/mach
ine$ ls
include myir-remi-1g.conf myir-remi.conf myir-yg2lx-1g.conf myir-yg2lx.conf
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/conf/mach
ine$ cp myir-remi-1g.conf g2l-test.conf
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/conf/mach
ine$ ls
g2l-test.conf include myir-remi-1g.conf myir-remi.conf myir-yg2lx-1g.conf myir-y
g2lx.conf

a1383fb4-fefb-11ef-9310-92fbcf53809c.png

14.8.2 更改machine文件

修改g2l-test.conf文件,把COMPATIBLE_MACHINE定义修改为g2l-test。

左右滑动查看完整内容

PC:~/renesas/yocto/layers/meta-myir-remi/conf/machine$ vi myir-test.conf
COMPATIBLE_MACHINE_g2l-test = "g2l-test

原来的配置,第15行 修改后的配置,第15行
a16369f0-fefb-11ef-9310-92fbcf53809c.png a19650e0-fefb-11ef-9310-92fbcf53809c.png

修改完成后,保存退出,继续执行后续操作。

14.8.3 拷贝g2l-test目录文件

进入layers/meta-myir-remi/docs/template/conf目录下拷贝平台文件,操作步骤如下所示:

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/docs/temp
late/conf$ cp myir-remi-1g/ g2l-test -rvf

a1bed2ea-fefb-11ef-9310-92fbcf53809c.png

14.8.4 修改g2l-test目录下local.conf文件

修改g2l-test目录下的local.conf文件,修改38行MACHINE定义为g2l-test,操作步骤如下所示:

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/docs/temp
late/conf/g2l-test$ vi local.conf
# This sets the default machine to be qemux86-64 if no other machine is selected:
MACHINE ??= "g2l-test"

a1fe46be-fefb-11ef-9310-92fbcf53809c.png

修改之前配置 修改之后配置
a21586bc-fefb-11ef-9310-92fbcf53809c.png a2315fea-fefb-11ef-9310-92fbcf53809c.png

14.8.5 修改layer.conf层文件

进入layers/meta-myir-remi/conf目录修改layer.conf增加对应的g2l-test平台,操作步骤如下:

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto$ cd layers/meta-myir-remi/conf
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/conf$ ls
layer.conf machine
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/conf$ vi 
layer.conf

a2590f04-fefb-11ef-9310-92fbcf53809c.png

分别参考下图所示,在layer.conf内增加如下两行配置:

左右滑动查看完整内容

LAYERDEPENDS_g2l-test = "core"
LAYERDEPENDS_g2l-test = "core yocto yoctobsp openembedded-layer meta-python"

增加配置之前 增加配置之后
a2737678-fefb-11ef-9310-92fbcf53809c.png a2a28f12-fefb-11ef-9310-92fbcf53809c.png

增加完成前面的配置后,继续增加如下配置:

左右滑动查看完整内容

BBFILE_COLLECTIONS += "g2l-test"
BBFILE_PATTERN_g2l-test = "^${LAYERDIR}/"
BBFILE_PRIORITY_g2l-test = "99"
LAYERSERIES_COMPAT_g2l-test = "dunfell"

增加配置之前 增加配置之后
a2beb2d2-fefb-11ef-9310-92fbcf53809c.png a2d335f4-fefb-11ef-9310-92fbcf53809c.png

全部增加完成后,保存退出即可。

14.8.6 增加环境变量文件

进入到layers/meta-myir-remi/scripts/目录修改g2l-environment-test.sh文件,操作步骤如下:

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto$ cd layers/meta-myir-remi/scrip
ts/
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/scripts$ 
cp myir-remi-1g-environment.sh g2l-environment-test.sh

a3282028-fefb-11ef-9310-92fbcf53809c.png

使用编辑器打开g2l-environment-test.sh文件,修改第一行内容为如下所示:

左右滑动查看完整内容

BUID=$(pwd)/layers/meta-myir-remi/docs/template/conf/g2l-test/

a347d09e-fefb-11ef-9310-92fbcf53809c.png

修改完成后,保存退出。

14.8.7 修改tf-a-myir.bb文件

修改tf-a-myir.bb文件,增加如下红色部分:

a3752404-fefb-11ef-9310-92fbcf53809c.png

左右滑动查看完整内容

buntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto$ cd layers/meta-myir-remi/recipe
s-bsp/trusted-firmware-a
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/recipes-b
sp/trusted-firmware-a$ vi tf-a-myir.bb

左右滑动查看完整内容

COMPATIBLE_MACHINE_test = "(g21-test)"

a3a0baf6-fefb-11ef-9310-92fbcf53809c.png

左右滑动查看完整内容

PLATFORM_g2l-test = "g2l"
EXTRA_FLAGS_g2l-test = "BOARD=smarc_1"
PMIC_EXTRA_FLAGS_g2l-test = "BOARD=smarc_pmic_1"
FLASH_ADDRESS_BL2_BP_g2l-test = "00000"
FLASH_ADDRESS_FIP_g2l-test = "1D200"

a3c3c3b6-fefb-11ef-9310-92fbcf53809c.png

14.8.8 修改flash-writer.bb文件

进入到layers/meta-myir-remi/recipes-remi/recipes-bsp/flash-writer修改flash-writer.bb文件,参考如下步骤所示:

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto$ cd layers/meta-myir-remi/recip
es-remi/recipes-bsp/flash-writer
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/recipes-r
emi/recipes-bsp/flash-writer$ vi flash-writer.bb

a3fdcac0-fefb-11ef-9310-92fbcf53809c.png

在do_compile函数内增加下面的命令,具体参考如下图红框所示:

左右滑动查看完整内容

elif [ "${MACHINE}" = "g2l-test" ]; then
 BOARD="RZG2L_SMARC_PMIC_1GB";
 PMIC_BOARD="RZG2L_SMARC_PMIC";

a41bcb88-fefb-11ef-9310-92fbcf53809c.png

修改完成,保存退出即可。

14.8.9 修改linux-myir_5.10.bb文件

进入到layers/meta-myir-remi/recipes-bsp/linux-kernel/linux修改linux-myir_5.10.bb文件,操作步骤如下所示:

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto$ cd layers/meta-myir-remi/recip
es-bsp/linux-kernel/linux
ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/layers/meta-myir-remi/recipes-b
sp/linux-kernel/linux$ vi linux-myir_5.10.bb

a46fdcdc-fefb-11ef-9310-92fbcf53809c.png

使用vim/gedit等工具打开linux-myir_5.10.bb文件后,增加一行如下配置,具体参考下图红色底线所示:

左右滑动查看完整内容

COMPATIBLE_MACHINE_test = "(g2l-test)"

a4882026-fefb-11ef-9310-92fbcf53809c.png

14.8.10 编译machine文件

根据以上已经配置好的平台文件,接下来可以进行编译,如下步骤指定MACHINE为我们新增的g2l-test,环境变量使用我们新增的g2l-environment-test.sh进行环境配置。

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto$ DISTRO=poky MACHINE=g2l-test s
ource layers/meta-myir-remi/scripts/g2l-environment-test.sh build-g2l-test

a4d43b8c-fefb-11ef-9310-92fbcf53809c.png

配置完成后,就可以开始编译自己的系统镜像。如下所示,默认支持的目标系统镜像,我们以myir-image-core为例,接下来进行编译演示。

a4f22b06-fefb-11ef-9310-92fbcf53809c.png

左右滑动查看完整内容

ubuntu@ubuntu2004:~/renesas/yocto/myir-renesas-yocto/build-g2l-test$ bitbake myir-im
age-core -k

a51c7aa0-fefb-11ef-9310-92fbcf53809c.pnga53db4ae-fefb-11ef-9310-92fbcf53809c.png

整个编译过程因为需要联网下载软件包,大概需要至少4-12个小时,建议耐心等待,编译完成后,系统镜像会输出至tmp/deploy/images/目录内,具体操作可以参考前面章节编译系统镜像部分。

第15章 常见问题

关闭GUI:

移除/etc/systemd/system/myir.service,重启。

发现scp出现权限问题时:

左右滑动查看完整内容

rm -f /home/ubuntu/.ssh/known_hosts

a55aec5e-fefb-11ef-9310-92fbcf53809c.png

编译strace:

左右滑动查看完整内容

git clone https://github.com/strace/strace.git
./bootstrap

左右滑动查看完整内容

strace$ ./configure --prefix=$PWD/tmp --host=aarch64-poky-linux CFLAGS="-mtune=corte
x-a55 -fstack-protector-strong -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werr
or=format-security --sysroot=/opt/remi-sdk/sysroots/aarch64-poky-linux" --enable-mpe
rs=no --disable-gcc-Werror

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 文件
    +关注

    关注

    1

    文章

    587

    浏览量

    25918
  • 编译
    +关注

    关注

    0

    文章

    688

    浏览量

    34950
  • Machine
    +关注

    关注

    0

    文章

    7

    浏览量

    8549
  • 单板
    +关注

    关注

    0

    文章

    33

    浏览量

    11176
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    HarmonyOS应用自定义键盘解决方案

    自定义键盘是一种替换系统默认键盘的解决方案,可实现键盘个性化交互。允许用户结合业务需求与操作习惯,对按键布局进行可视化重构、设置多功能组合键位,使输入更加便捷和舒适。在安全防护层面,自定义键盘可以
    的头像 发表于 06-05 14:19 1583次阅读

    自定义控件如何添加引用句柄

    请问如图片所示的自定义控件里面的句柄引用是如何添加呢?初学labview,请指教
    发表于 08-14 14:32

    给Xcontrol自定义事件

    labview提供的Xcontrol的功能了,如何给Xcontrol添加自定义事件呢,本例就是给Xcontrol添加自定义控件,压缩文件名为AOI的是一个视觉案子里想
    发表于 02-24 20:14

    请问docker容器如何添加自定义hosts?

    docker容器添加自定义hosts的方案有哪些?docker容器添加自定义hosts的错误示例
    发表于 11-05 06:20

    1602自定义字符

    1602液晶能够显示自定义字符,能够根据读者的具体情况显示自定义字符。
    发表于 01-20 15:43 1次下载

    自定义进度指示器progressbutton

    概述 1、描述:progressbutton是占位面积很小的自定义进度指示器。默认实现提供了一个pin进度按钮。 2、实现功能:a.自定义圆形进度条。 b.实现根据Slider滑动更新自定义进度条
    发表于 03-24 14:26 1次下载

    自定义视图组件教程案例

    自定义组件 1.自定义组件-particles(粒子效果) 2.自定义组件- pulse(脉冲button效果) 3.自定义组件-progress(progress效果) 4.
    发表于 04-08 10:48 15次下载

    ArkUI如何自定义弹窗(eTS)

    自定义弹窗其实也是比较简单的,通过CustomDialogController类就可以显示自定义弹窗。
    的头像 发表于 08-31 08:24 3393次阅读

    教程 2:添加特征-自定义配置文件创建

    教程 2:添加特征 - 自定义配置文件创建
    发表于 03-15 19:39 0次下载
    教程 2:<b class='flag-5'>添加</b>特征-<b class='flag-5'>自定义</b>配置文件创建

    labview自定义控件

    labview自定义精美控件
    发表于 05-15 16:46 22次下载

    自定义算子开发

    一个完整的自定义算子应用过程包括注册算子、算子实现、含自定义算子模型转换和运行含自定义op模型四个阶段。在大多数情况下,您的模型应该可以通过使用hb_mapper工具完成转换并顺利部署到地平线芯片上……
    的头像 发表于 04-07 16:11 4837次阅读
    <b class='flag-5'>自定义</b>算子开发

    教程 2:添加特征-自定义配置文件创建

    教程 2:添加特征 - 自定义配置文件创建
    发表于 07-06 18:50 0次下载
    教程 2:<b class='flag-5'>添加</b>特征-<b class='flag-5'>自定义</b>配置文件创建

    添加自定义属性控制fridaserver启动和停止

    添加自定义属性控制fridaserver启动和停止
    的头像 发表于 08-09 10:08 2690次阅读
    <b class='flag-5'>添加</b><b class='flag-5'>自定义</b>属性控制fridaserver启动和停止

    labview超快自定义控件制作和普通自定义控件制作

    labview超快自定义控件制作和普通自定义控件制作
    发表于 08-21 10:32 14次下载

    think-cell:自定义think-cell(四)

    C.5 设置默认议程幻灯片布局 think-cell 议程可以在演示文稿中使用特定的自定义布局来定义议程、位置和议程幻灯片上的其他形状,例如标题或图片。通过将此自定义布局添加到模板,您
    的头像 发表于 01-13 10:37 881次阅读
    think-cell:<b class='flag-5'>自定义</b>think-cell(四)