Firefly开源社区

打印 上一主题 下一主题

[Android] 关于Android11 开treble后power hal build fail的问题

25

积分

0

威望

0

贡献

技术小白

积分
25

关于Android11 开treble后power hal build fail的问题

发表于 2022-1-5 22:33:33      浏览:6322 | 回复:6        打印      只看该作者   [复制链接] 楼主
最近在Android11上遇到如下build fail:
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554] android.hardware.power:
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554]     required: IPower/default
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554]     provided: @1.0::IPower/default
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554]

checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554]     android.hardware.power@1.0::IPower/default
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554] Suggested fix:
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554] 1. Update deprecated HALs to the latest version.
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554] 2. Check for any typos in device manifest or framework compatibility matrices with FCM version >= 5.
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554] 3. For new platform HALs, add them to any framework compatibility matrix with FCM version >= 5 where applicable.
checkvintf E 01-05 22:30:48   334   334 check_vintf.cpp:554] 4. For device-specific HALs, add to DEVICE_FRAMEWORK_COMPATIBILITY_MATRIX_FILE or DEVICE_PRODUCT_COMPATIBILITY_MATRIX_FILE.: Success
INCOMPATIBLE

问题:
1.系统的兼容性矩阵中确实是如下定义:
    <hal format="aidl" optional="false">
        <name>android.hardware.power</name>
        <interface>
            <name>IPower</name>
            <instance>default</instance>
        </interface>
    </hal>

2.manifest.xml中定义是:
    <hal format="hidl">
        <name>android.hardware.power</name>
        <transport>hwbinder</transport>
        <version>1.0</version>
        <interface>
            <name>IPower</name>
            <instance>default</instance>
        </interface>
    </hal>
这个地方又不可能不提供版本??所以这是什么问题?
回复

使用道具 举报

发表于 2022-1-6 16:13:25        只看该作者  沙发
1. 原生的SDK编译是否有问题?
2. SDK做了哪些修改?
回复

使用道具 举报

25

积分

0

威望

0

贡献

技术小白

积分
25
发表于 2022-1-6 16:29:07        只看该作者  板凳
我拉了一包AOSP的Android11的code想自己玩一下:
仅仅加了下面两个参数:
PRODUCT_SHIPPING_API_LEVEL := 30
PRODUCT_FULL_TREBLE_OVERRIDE := true
看样子是开treble后,HAL的配置问题,想请教下贵司做3568 Android11的时候,有没有遇到过类似的问题。
回复

使用道具 举报

25

积分

0

威望

0

贡献

技术小白

积分
25
发表于 2022-1-6 16:34:13        只看该作者  地板
firefly_zhongw 发表于 2022-1-6 16:13
1. 原生的SDK编译是否有问题?
2. SDK做了哪些修改?

我拉了一包AOSP的Android11的code想自己玩一下:
仅仅加了下面两个参数:
PRODUCT_SHIPPING_API_LEVEL := 30
PRODUCT_FULL_TREBLE_OVERRIDE := true
看样子是开treble后,HAL的配置问题,想请教下贵司做3568 Android11的时候,有没有遇到过类似的问题
回复

使用道具 举报

811

积分

0

威望

0

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
811
发表于 2022-1-8 10:33:49        只看该作者  5#
可以改一下这个文件,重新编译试试
  1. diff --git a/hardware/interfaces/compatibility_matrices/compatibility_matrix.5.xml b/hardware/interfaces/compatibility_matrices/compatibility_matrix.5.xml
  2. index 1c2a053..7b22ebf 100644
  3. --- a/hardware/interfaces/compatibility_matrices/compatibility_matrix.5.xml
  4. +++ b/hardware/interfaces/compatibility_matrices/compatibility_matrix.5.xml
  5. @@ -358,6 +358,7 @@
  6.      </hal>
  7.      <hal format="aidl" optional="false">
  8.          <name>android.hardware.power</name>
  9. +        <version>1.0</version>
  10.          <interface>
  11.              <name>IPower</name>
  12.              <instance>default</instance>
复制代码
回复

使用道具 举报

25

积分

0

威望

0

贡献

技术小白

积分
25
发表于 2022-1-19 20:25:44        只看该作者  6#
luwy 发表于 2022-1-8 10:33
可以改一下这个文件,重新编译试试

怎么能修改AOSP的东西呢?应该是要自己加一个FCM吧,但是加了好像还是会报这个错误
回复

使用道具 举报

811

积分

0

威望

0

贡献

管理员

Rank: 9Rank: 9Rank: 9

积分
811
发表于 2022-1-20 11:09:39        只看该作者  7#
shen 发表于 2022-1-19 20:25
怎么能修改AOSP的东西呢?应该是要自己加一个FCM吧,但是加了好像还是会报这个错误

在上一个修改的基础上将 <hal format="aidl" optional="false"> --> <hal format="aidl" optional="true">, 我这边可以编译成功
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表