记编译Pixel 3 (blueline)内核 android11遇到的问题

参考:构建 Pixel 内核  |  Android Open Source Project

repo仓库配置

~/android-kernel/.repo/repo$ git remote show origin
* 远程 origin
  获取地址:https://mirrors.tuna.tsinghua.edu.cn/git/git-repo

内核仓库配置

~/android-kernel/.repo/manifests$ git remote show origin * 远程 origin
  获取地址:https://mirrors.tuna.tsinghua.edu.cn/git/AOSP//kernel/manifest

分支选择(android11,与android-aosp对应)

~/android11/.repo/manifests$ git remote show origin  |head -n 20
* 远程 origin
  获取地址:git://mirrors.ustc.edu.cn/aosp/kernel/manifest

~/android11/.repo/manifests$ head default.xml
<?xml version="1.0" encoding="UTF-8"?>
<manifest>

  <remote  name="aosp"
           fetch=".."
           review="https://android-review.googlesource.com/" />
  <default revision="refs/tags/android-11.0.0_r4"
           remote="aosp"
           sync-j="4" />

kernel的分支

Pixel 3 (blueline)
Pixel 3 XL (crosshatch)
device/google/crosshatch-kernel

android-msm-crosshatch-4.9-android11

换内核后,启动到桌面失败,重启就invalid slot

原因: 声卡加载失败,  /vendor/lib/modules/*.ko 内核模块没有更新,不对应

原因是:没有更新vendor/google_devices/blueline/proprietary/vendor.img里的ko

解决方式

处理方式一:

重新打包vendor.img

处理方式二:

 把模块全部改成内建 =m改成=y

1)文件b1c1_defconfig

~/android-kernel/private/msm-google$ git diff

diff --git a/arch/arm64/configs/b1c1_defconfig b/arch/arm64/configs/b1c1_defconfig
index 897d1ddb611d..2256855d19ec 100644
--- a/arch/arm64/configs/b1c1_defconfig
+++ b/arch/arm64/configs/b1c1_defconfig
@@ -338,9 +338,9 @@ CONFIG_JOYSTICK_XPAD=y
 CONFIG_JOYSTICK_XPAD_FF=y
 CONFIG_JOYSTICK_XPAD_LEDS=y
 CONFIG_INPUT_TOUCHSCREEN=y
-CONFIG_TOUCHSCREEN_FTS=m
+CONFIG_TOUCHSCREEN_FTS=y
 CONFIG_TOUCHSCREEN_FTM4=y
-CONFIG_TOUCHSCREEN_SEC_TS=m
+CONFIG_TOUCHSCREEN_SEC_TS=y
 CONFIG_TOUCHSCREEN_TBN=y
 CONFIG_INPUT_MISC=y
 CONFIG_INPUT_QPNP_POWER_ON=y

2)b1c1auto.conf

~/android-kernel/private/msm-google/techpack/audio$ git diff .
diff --git a/config/b1c1auto.conf b/config/b1c1auto.conf
index cbc66964..307098f0 100644
--- a/config/b1c1auto.conf
+++ b/config/b1c1auto.conf
@@ -1,11 +1,11 @@
-CONFIG_PINCTRL_WCD=m
-CONFIG_SND_SOC_WCD9XXX_V2=m
-CONFIG_SND_SOC_WCD_SPI=m
-CONFIG_SND_SOC_WCD934X=m
-CONFIG_WCD9XXX_CODEC_CORE=m
-CONFIG_MSM_CDC_PINCTRL=m
-CONFIG_SND_SOC_MACHINE_SDM845=m
-CONFIG_WCD_DSP_GLINK=m

+CONFIG_PINCTRL_WCD=y
+CONFIG_SND_SOC_WCD9XXX_V2=y
+CONFIG_SND_SOC_WCD_SPI=y
+CONFIG_SND_SOC_WCD934X=y
+CONFIG_WCD9XXX_CODEC_CORE=y
+CONFIG_MSM_CDC_PINCTRL=y
+CONFIG_SND_SOC_MACHINE_SDM845=y
+CONFIG_WCD_DSP_GLINK=y

 CONFIG_MSM_QDSP6V2_CODECS=y
 CONFIG_MSM_QDSP6_APRV2_GLINK=y
 CONFIG_SND_SOC_MSM_QDSP6V2_INTF=y
@@ -21,11 +21,11 @@ CONFIG_QTI_PP=y
 CONFIG_SND_HWDEP_ROUTING=y
 CONFIG_SND_SOC_MSM_STUB=y
 CONFIG_MSM_AVTIMER=y
-CONFIG_SND_SOC_MAX98927=m
-CONFIG_SND_SOC_CS35L36=m

+CONFIG_SND_SOC_MAX98927=y
+CONFIG_SND_SOC_CS35L36=y

 CONFIG_SND_SOC_CS35L36_I2S=y
 CONFIG_SND_SOC_CS35L36_TDM=y
 CONFIG_CIRRUS_SPKR_PROTECTION=y
-CONFIG_SND_SOC_MACHINE_SDM845_MAX98927=m
+CONFIG_SND_SOC_MACHINE_SDM845_MAX98927=y
 CONFIG_WCD_SPI_AC=y
 CONFIG_WCD_MICBIAS_USE_PULLUP=y

这个编译后,替换Image.lz4可以启动, 

cp ~/android-kernel/out/android-msm-pixel-4.9/dist/mage.lz4 device/google/crosshatch-kernel/

重新打包(make),下载 (fastboot flashall -w),正常启动

wlan.ko还是旧的,需要换一下才能正常使用wifi

  • 10
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值