前两天编译了 Pixel7A 最新的的 AOSP(AP2A.240705),里面 prebuild 预置了 5.10.198 版本的 Android Kernel 。我想试试 6.1 版本的内核,但是文档里只提供了 android-gs-lynx-5.10-android14-qpr3 分支源码,编译出来的也是 5.10.198 版本。
看到最近的 Android 大版本中使用了 GKI 镜像,这个 GKI 在整体开发流程上不是特别清楚。我个人的理解是,以后的纯 kernel 代码基本就交给 Google 这边维护了,芯片厂和代工厂通过 GKI 抽象出来的 KMI 进行适配和开发,这些和 kernel 解耦的代码,放到 vendor_boot.img 。不知道以上对 GKI 的理解有没有问题。
不过我还是想提出一些我的问题:
BUILD_CONFIG=aosp/build.config.gki.aarch64 build/build.sh
BUILD_CONFIG=private/gs-google/build.config.gki.aarch64 build/build.sh
1
pagxir 110 天前 via Android
你的有适配 6.1 的设备树。不同版本的 kernel 设备树不尽相同,这个是 arm 不如 x86 的地方
|
3
FranzKafka95 110 天前
common 分支是基础镜像,是给各个 ODM 厂商适配时的 base ,一般 ODM 厂商/Vendor 厂商会基于这个 base 去适配设备,如果你要更新最新版本的内核,涉及到的绝对不是设备树( DTS/DTB )这一点,很多 Driver 相关的修改可能也会涉及。
|
4
SmaliYu OP @FranzKafka95 就是简单来说,我基本上无法自己为设备更新内核,即使是相对开放的 Pixel7a
|
5
FranzKafka95 110 天前
@SmaliYu 如果你能拿到之前的设备树信息,配合改改,驱动也没什么大的变化还是有可能的
|