CAF TAG是CodeAurora网站的源码,(不过今年可能要改成CLO,目前主角不是他,所以先不说)。
CAF的标签对应的芯片组可以从wiki获取
教程以msm-4.9的SDM710为蓝本进行教程。
Subtree
4.9内核的staging是不带Qcacld3.0等一系列的必需品(当然这玩意在内核源码外面又不是不能构架)
如果我们需要把Qcacld3.0扔进内核,有两个办法
1.下载Qcacld源码直接扔到对应目录(drivers/staging/qcacld-3.0)
2.subtree到对应目录(drivers/staging/qcacld-3.0)
subtree后期CAF TAG更新的时候直接merge即可,而第一种方法就emmm(自行体会)
首先,我们找到内核源码对应tag的qcacld源码,然后进入内核源码目录
例如我们内核源码tag是LA.UM.8.8.r1-09100-SDM710.0
,所以我们qcacld也是这个tag
然后我们输入命令
git subtree add --prefix=drivers/staging/qcacld-3.0 https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/qcacld-3.0.git LA.UM.8.8.r1-09100-SDM710.0
然后就会发现qcacld-3.0
已经在drivers/staging/qcacld-3.0
里了,而且qcacld历史提交也在
不过目前是无法构建qcacld的(因为这是教git,所以不在此篇文章范围之内)
Subtree的合并
例如caf又放出新的tag了LA.UM.8.8.r1-09400-SDM710.0
,我们需要合并怎么办
首先先fetch新的tag
git fetch https://source.codeaurora.org/quic/la/platform/vendor/qcom-opensource/wlan/qcacld-3.0.git LA.UM.8.8.r1-09400-SDM710.0
然后
git merge -s subtree FETCH_HEAD
解决冲突就像解决kernel版本更新一样解决,最后git add .
,git commit
或者git commit -a
完成提交,如果你不明白,可以看caf tag合并,冲突解决的教程,因为都是一致的
CAF TAG合并
也是一样caf又放出新的tag了LA.UM.8.8.r1-09400-SDM710.0
,我们需要合并怎么办
先fetch新的tag
git fetch https://source.codeaurora.org/quic/la/kernel/msm-4.8.git LA.UM.8.8.r1-09400-SDM710.0
然后
git merge FETCH_HEAD
如果冲突了怎么办
举个栗子
自动合并 arch/arm64/boot/dts/qcom/sda845-sdxpoorwills.dtsi
冲突(内容):合并冲突于 arch/arm64/boot/dts/qcom/sda845-sdxpoorwills.dtsi
自动合并失败,修正冲突然后提交修正的结果。
我们看到它冲突了,我们先确定他那些文件冲突了
git status
位于分支 lineage-18.1
您有尚未合并的路径。
(解决冲突并运行 "git commit")
(使用 "git merge --abort" 终止合并)
未合并的路径:
(使用 "git add <文件>..." 标记解决方案)
双方修改: arch/arm64/boot/dts/qcom/sda845-sdxpoorwills.dtsi
可以确定是sda845-sdxpoorwills.dtsi
有冲突,我们打开看看那里冲突了,或者git diff
查看
<<<<<<< HEAD
/* Copyright (c) 2017-2018, The Linux Foundation. All rights reserved.
* Copyright (C) 2020 XiaoMi, Inc.
=======
/* Copyright (c) 2017-2018, 2021 The Linux Foundation. All rights reserved.
>>>>>>>
emmm...这种的话解决成如下就行了
/* Copyright (c) 2017-2018, 2021 The Linux Foundation. All rights reserved.
* Copyright (C) 2020 XiaoMi, Inc.
解决完成之后,git add .
和git commit
或者git commit -a
提交完工
最后
如有错误,欢迎指出
评论 (0)