1.3 拉取I-pipe代码

Interrupt Pipeline系列文章大纲-CSDN博客

        如上文所述,目前对ipipe-arm64比较感兴趣。

        在Index of /pub/xenomai/ipipe/v4.x/arm64/ (denx.de)可以下载I-pipe的patch,通过git apply到kernel.org的Linux内核。下载目录里面最新的是ipipe-core-4.19.209-cip59-arm64-12.patch。如果上面的ftp链接访问不了,试试ipipe/v4.x/arm64 · main · xenomai / download-archive · GitLab (denx.de)

       也可以直接从I-pipe的git代码仓库,直接拉取代码,切换到对应的tag。这种方式可以更清楚的看到commits记录。

# git clone https://source.denx.de/Xenomai/ipipe-arm64.git
# git checkout -b ipipe-core-4.19.209-cip59-arm64-12

  从提交 · ipipe-core-4.19.209-cip59-arm64-12 · xenomai / ipipe-arm64 · GitLab (denx.de)的commits记录看,代码变动的规律如下。

  1. 6db10b4d:首先拿到原始的Linux代码Linux 4.19.209:
  2. 4b60ad81:merge到分支linux-4.19.y-cip。可以把linux-4.19.y-cip理解为用于追踪upstream代码的分支。CIP后缀代表什么意思?一个Linux Foundation支持的项目,全称为Civil Infrastructure Platform民用基础设施项目,基于Linux LTS版本。所以CIP就是长期稳定的意思。
  3. 11e803e0:增加版本后缀-cip59,同时打tag v4.19.209-cip59
  4. 4eeaf7e2:把第三步打的tag v4.19.209-cip59合并到IPIPE的ipipe/4.19.y-cip分支。ipipe/4.19.y-cip分支即为IPIPE-ARM64针对4.19.x内核的长期维护版本,里面包含了IPIPE的修改。
  5. 32539d81:在ipipe/4.19.y-cip分支,修改ipipe的release tag为12,并打tag ipipe-core-4.19.209-cip59-arm64-12

        所以,这个思路是把upstream的修改,不断合并到ipipe自己的分支ipipe/4.19.y-cip。根据上面的分析,ipipe-core-4.19.209-cip59-arm64-12.patch是哪两个分支或commit diff出来的呢?经过对比,是第(5)步和第(2)步的git diff的结果。

        另外,发现最早的基于4.19的I-pipe的tag是:提交 · ipipe-core-4.19.55-arm64-1 · xenomai / ipipe-arm64 · GitLab (denx.de),能看到最原始的修改。

 最新的基于4.19的I-pipe的tag是:提交 · ipipe-core-4.19.229-cip67-arm64-13 · xenomai / ipipe-arm64 · GitLab (denx.de)。但是我还是用4.19.209的patch,对分析代码影响不大。

点击查看系列文章 =》 Interrupt Pipeline系列文章大纲-CSDN博客

原创不易,需要大家多多鼓励!您的关注、点赞、收藏就是我的创作动力!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值