嵌入式 linux/android 内核开发工作流程

Embedded linux/android kernel development workflow

本文关键字:开发 工作流程 内核 android linux 嵌入式      更新时间:2023-10-16

我受到了上一个问题的启发,但我没有得到全貌。我正在为基于商用芯片组平台的新设备开发内核和Android系统。

芯片组供应商为我提供了"压缩的固定内核代码","android专有来源","调制解调器来源"。所有这些部分都是配对的,例如,我无法(在某种程度上)更改其中一个平台元素(内核,调制解调器,系统)而不会影响其他部分。

这也非常有限,如果需要更新的版本会发生什么?我不确定我会得到供应商的来源。

因此,以下是我所做的一些流程:

====

====================================================================

工作流程1: - 我不需要更新的版本,我现在需要发布设备!

1.下载芯片组提供商及其系统的最新公共内核

2.将我自己的驱动程序添加到内核中

3.将专有源代码添加到构建中

4.编译 ->一切都已经配置

5.调试->很少

6.补丁->小

7.释放->快速

8.提供更新? ->失败? -我需要芯片组供应商提供的新内核/系统。

====

======================================================================

工作流程 2:我不需要供应商

1.从谷歌/氰基等下载一个干净的安卓系统。

2.将我的驱动程序添加到内核

3.从芯片组供应商的来源获取内核补丁

3.为专有文件构建设备目录

4.配置/修补专有以与系统编译 ->地狱

5.面对很多低级错误->地狱

6.调试/修补

7.错过最后期限并被解雇

知道这在主要移动设备制造商中是如何工作的吗?

谢谢!

我正在为一家芯片组供应商工作。我们为我们的客户提供参考内核和参考安卓资源。但是我们不是将它们作为"压缩源代码"提供,而是作为 git 存储库提供,因此客户可以看到我们放入内核/AFS/etc 中的所有补丁并将它们合并到他们的存储库中。

因此,在您的情况下,我建议您要求供应商访问 git 存储库。如果不可能,我建议您使用工作流程 1。如果您需要重大更新(例如从GB切换到ICS),则无论如何都需要新供应商的来源。可以在现有源之上进行次要更新。