前言
我手里有一台 Pixel 6,Android

这里我们想要将 Pixel 6 设备的内核升级到 v6.1,所以我们必须先刷入BP11.241025.006 (12620009)将设备降级到指定版本,然后再为其编译内核。

下载内核
# 初始化 mainline 分支的清单
repo init -u https://android.googlesource.com/kernel/manifest -b android-gs-raviole-6.1-android16
# 同步代码
repo sync -c --no-tags -j$(nproc)
集成SukiSU-Ultra
进入 kernel common 目录,然后运行 SukiSU-Ultra 官方源码集成脚本:
cd /root/kernel-6.1/common
curl -LSs "https://raw.githubusercontent.com/SukiSU-Ultra/SukiSU-Ultra/main/kernel/setup.sh" | bash -s main
构建内核
# 构建
tools/bazel run --config=raviole --config=fast //private/google-modules/soc/gs:slider_dist
构建完成后检查产物:
ls -lh out/slider/dist/boot.img \
out/slider/dist/dtbo.img \
out/slider/dist/dtb.img \
out/slider/dist/vendor_dlkm.img
刷入设备
# 重启到 bootloader
adb reboot bootloader
# 刷入内核(需要解锁的 bootloader)
fastboot getvar current-slot # 记住当前 slot
fastboot flash boot out/slider/dist/boot.img # 文档里的 Image.lz4-dtb 不存在,boot.img 才是正确产物
fastboot flash dtbo out/slider/dist/dtbo.img
fastboot flash vendor_dlkm out/slider/dist/vendor_dlkm.img
fastboot reboot
参考
构建 Pixel 内核 | Android Open Source Project pixel6内核编译集成KernelSU刷入Lineage21(上)