aosp 制作 rom 刷机 添加厂家二进制驱动 及 出厂镜像
首先介绍下背景知识。
aosp 仅是一套源码,不含厂家驱动。 CM安卓的厂家驱动是自行提取的。
一般的安卓手机分区,有 boot , system, user , Baseband 基带, recovery , cache 等。
Google Pixel XL 都需要哪些 驱动呢?
1, 厂家驱动二进制。
https://developers.google.com/android/drivers#marlinppr2.180905.006.a1
Pixel XL binaries for Android 9.0.0 (PPR2.180905.006.A1)
https://dl.google.com/dl/android/aosp/google_devices-marlin-ppr2.180905.006.a1-1090e880.tgz
2f93f49993f6ff4f2269b53ec913966236de44f07dbb41657505b0402e21d0dc
GPS, Audio, Camera, Gestures, Graphics, DRM, Video, Sensors
https://dl.google.com/dl/android/aosp/qcom-marlin-ppr2.180905.006.a1-d11de9e0.tgz
25c68bc68254c4426c280ed57499177973a69b9d843d5ca79c7fc918e6e0d1ba
出厂镜像
https://developers.google.com/android/images
https://dl.google.com/dl/android/aosp/marlin-ppr2.180905.006.a1-factory-a78fe264.zip
厂家二进制驱动提供 hal 层的 gps 照像 基带 什么的支持。
如何添加到 aosp 中一起编译?
下载上面的3个文件,并验证 sha。
然后解压得到2个 sh extract-google_devices-marlin.sh extract-qcom-marlin.sh
复制到 aosp 源码目录中,手动执行一下,安装好。
./extract-google_devices-marlin.sh
vendor/
vendor/google_devices/
vendor/google_devices/marlin/
vendor/google_devices/marlin/device-vendor-marlin.mk
vendor/google_devices/marlin/android-info.txt
vendor/google_devices/marlin/BoardConfigVendor.mk
vendor/google_devices/marlin/BoardConfigPartial.mk
vendor/google_devices/marlin/proprietary/
vendor/google_devices/marlin/proprietary/vendor.img
vendor/google_devices/marlin/device-partial.mk Files extracted successfully. 第2个 高通驱动
./extract-qcom-marlin.sh
vendor/
vendor/qcom/
vendor/qcom/marlin/
vendor/qcom/marlin/BoardConfigPartial.mk
vendor/qcom/marlin/proprietary/
vendor/qcom/marlin/proprietary/lib64/
vendor/qcom/marlin/proprietary/lib64/libbcc.so
vendor/qcom/marlin/proprietary/lib64/libLLVM_android.so
vendor/qcom/marlin/proprietary/lib64/libiperf.so
vendor/qcom/marlin/proprietary/lib64/libminui.so
vendor/qcom/marlin/proprietary/ATT_profiles.xml
vendor/qcom/marlin/proprietary/pktlogconf
vendor/qcom/marlin/proprietary/VZW_profiles.xml
vendor/qcom/marlin/proprietary/ROW_profiles.xml
vendor/qcom/marlin/proprietary/libclcore_neon.bc
vendor/qcom/marlin/proprietary/sanitizer-status
vendor/qcom/marlin/proprietary/libiperf.so
vendor/qcom/marlin/proprietary/qcrilhook.jar
vendor/qcom/marlin/proprietary/libminui.so
vendor/qcom/marlin/proprietary/libion.so
vendor/qcom/marlin/proprietary/iperf3
vendor/qcom/marlin/device-partial.mk
vendor/google_devices/
vendor/google_devices/marlin/
vendor/google_devices/marlin/device-vendor-marlin.mk
vendor/google_devices/marlin/android-info.txt
vendor/google_devices/marlin/BoardConfigVendor.mk Files extracted successfully.
重新执行 生成镜像命令 。
wildcard(vendor) was changed, regenerating...
wildcard(vendor) was changed, regenerating...
[ 21% 243/1111] including out/soong/Android-aosp_marlin.mk
因为之前用的 master 分支,需要手动切到安卓9上来,重新 lunch make 。
先使用出厂镜像来刷机
启用开发者模式,打开 USB 调试 adb shell 能进入
开机键 + 音量- 进入 bootloader 模式
电脑上能识别出来手机并装上了驱动
fastboot devices 能看到设备。
解压 marlin-ppr2.180905.006-factory-df8ec974.zip 里面有个 flash-all.bat 双击等几分钟,就刷好了。

刷入 自己编译的 AOSP 的安卓 img 。
为什么要先刷入出厂镜像呢?
因为你的手机买回来可能是 8.0 或 7.1 的 安卓版本,而最新的编译出来的是 9.0 的安卓。
在刷自己编译出来的 那几个 img 。
发现问题了,其它都正常,就是 SIM 不识别。
aosp 制作 rom 刷机 添加厂家二进制驱动 及 出厂镜像的更多相关文章
- 联想VIBE UI 固件ROM刷机包集合
固件下载_联想乐问吧http://ask.lenovomobile.com/?c-157.html 联想VIBE UI 固件ROM刷机包集合 悬赏分:0 解决时间:2014/09/12 15: ...
- u8818 G300的官方rom刷机包及详细的刷机方法
之前看到有些机友在找华为u8818的官方rom固件包,在这里我给大家分享一下这个手机的官方原版的固件rom包吧,有2.3的,也有4.0的,大家可以根据自己的需求来下载. 华为U8818官方2.3固件: ...
- OpenFlow硬件交换机制作及刷机教程
1.目的 将普通路由器升级成为一台支持OpenFlow的交换机. 具体哪些路由器可以刷OpenFlow可以参考:OpenWRT:http://wiki.openwrt.org/toh/start#su ...
- Android手机ROM刷机简介
这一段时间刷了一堆ROM,安卓系列.CM.Hero.OldMos.隔壁新出的Android2.0,反正都尝了一下鲜,手机的照相机也刷得再也启不来了(不知道什么原因,杯具).有话说:"久病成良 ...
- android ROM刷机updater-script单刷补丁包脚本
ui_print(""); ui_print("-------------------------"); ui_print(" Let's Go &q ...
- 手机刷机软件与ROM的盈利模式分析
一. 智能手机的兴起不过短短几年时间,更新迭代已经让实体键盘成为回忆.智能手机带来的是人们生活习惯的改变,对于手机的重度依赖,是好是坏不去评价.智能手机相对于之前的手机最大的改变不仅仅是屏幕的飞速变大 ...
- NanoPC-T2制作刷机包
anoPC-T2制作刷机包 前提:到友善的wiki中,仔细看编译uboot.内核.制作刷机包的教程. 准备工作: 1. 虚拟机Ubuntu安装,并安装n多软件可以支撑编译内核等等. 2. 安装交叉编 ...
- 从CM刷机过程和原理分析Android系统结构
前面101篇文章都是分析Android系统源代码,似乎不够接地气. 假设能让Android系统源代码在真实设备上跑跑看效果,那该多好.这不就是传说中的刷ROM吗?刷ROM这个话题是老罗曾经一直避免谈的 ...
- (转)Android刷机的一些知识整理
刷机概述刷机原因刷机可以升级和破解固件(在Android上:即可以升级系统,更改系统,获取Root权限):破解系统的原因①安装第三方软件不需要签名,不受证书的束缚:②修改系统的文件,达到系统的瘦身,以 ...
随机推荐
- Python基本了解
1. 计算机基础知识 CPU : 人类的大脑,运算处理问题 内存 : 临时储存数据,断点数据就会消失,存储数据快 硬盘 : 永久存储各种数据,相对于内存存储速度慢 操作系统 : 本质上是一个软件,用于 ...
- HUPO|PSI|PeptideAtlas|TPP|Partial submission|Complete submission|proteomeXchange
蛋白质组实验数据提交 需要共享数据,共享要求: 质谱实验数据 HUPO Proteomics Standards Initiative (http://www.psidev.info/overview ...
- abstract class
在面向对象(OOP)语言中,一个类可以有一个或多个子类,而每个类都有至少一个公有方法作为外部代码访问的接口.而抽象方法就是为了方便继承而引入的,现在来看一下抽象类和抽象方法分别是如何定义以及他们的特点 ...
- xml_class来自 phpcms
<?php class xml{ var $parser; var $document; var $stack; var $data; var $last_opened_tag; var $is ...
- derby数据库的了解及使用
derby数据库 一.简介 Derby 易于管理.当嵌入到客户机应用程序中时, Derby 系统不需要任何管理干预. Derby 是可嵌入的.应用程序可以将数据库管理系统( Database Mana ...
- 《人性与暴力-论暴力侵略》ER
card level 人名卡 反常识卡 世界发生了什么? - 信息爆炸 信息与信任构成了人类发展两大命题 人性史与暴力史 未来世界会变得怎么样?- 历史不会重复,但会押韵.暴力呈现下降. 改变世界的三 ...
- ES6中Map数据结构学习笔记
很多东西就是要细细的品读然后做点读书笔记,心理才会踏实- Javascript对象本质上就是键值对的集合(Hash结构),但是键只能是字符串,这有一定的限制. 1234 var d = {}var e ...
- JavaScript是如何工作的(一)
简评:JavaScript 是越来越受欢迎了,很多团队都在采用这些语言工作.前端.后端.嵌入式设备等等,都可以看见它的身影.虽然我们知其然,但又知其所以然吗? 大家应该都知道 JavaScript 是 ...
- water
webchacking.kr 第5题 打开题目发现了两个按钮,分别是Login和join 打开Login发现url是http://webhacking.kr/challenge/web/web-05/ ...
- flask 参数校验
校验参数是否存在,不存在返回400 @app.route('/check',methods=['POST']) def check(): values = request.get_json() req ...