Рабочий процесс разработки встроенного ядра linux / android

Меня вдохновил этот предыдущий вопрос, но я не получил вся картина. Я разрабатываю ядро ​​и систему Android для нового устройства, основанного на коммерческой платформе набора микросхем.

Поставщик набора микросхем предоставляет мне «фиксированный заархивированный код ядра», «собственные исходные коды Android», «исходные коды модема». Все эти части связаны, например, я не могу изменить (до некоторой степени) один из элементов платформы (ядро, модем, систему), не влияя на другие части.

Это также довольно ограничивает, что будет, если потребуется более новая версия? Я не могу быть уверен, что получу для этого исходники поставщика.

Итак, вот несколько потоков, которые я сделал:

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

Рабочий процесс1: - Мне не нужна более новая версия, мне нужно устройство выпуска прямо сейчас!

1.Загрузите последнюю общедоступную версию ядра поставщика чипсета и его системы.

2.Добавить в ядро ​​свои драйверы

3.Добавить в сборку проприетарный исходный код

4.compile -> все уже настроено

5. отладка -> немного

6. патч -> немного

7. выпуск -> быстро

8. дать обновление? -> потерпеть неудачу !? - Мне нужно новое ядро ​​/ система от производителя чипсета.

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

Рабочий процесс 2. Мне не нужен поставщик

1.Загрузите чистую систему android из google / cyanogem и тд ..

2.Добавить мои драйвера в ядро

3. Получить исправления ядра из исходников производителя чипсета.

3.Создать каталог устройства для проприетарных файлов.

4. настроить / пропатчить проприетарную для компиляции с системой -> ад

5. столкнуться с множеством ошибок низкого уровня -> ад

6. отладка / патч

7. пропустить дедлайн и быть уволенным

Есть идеи, как это на самом деле работает у основных производителей мобильных устройств?

Спасибо!


person skoperst    schedule 23.04.2012    source источник
comment
Вы когда-нибудь видели производителей устройств, которые быстро обновляются? Полагаю, это больше похоже на workflow2   -  person zapl    schedule 23.04.2012


Ответы (1)


Я работаю на одного из производителей чипсетов. Мы предоставляем нашим клиентам справочное ядро ​​и справочные источники Android. Но мы предоставляем их не как «заархивированный исходный код», а как репозиторий git, чтобы клиенты могли видеть все исправления, которые мы помещаем в kernel / AFS / etc, и объединять их в свои репозитории.

Итак, в вашем случае я рекомендую вам попросить вашего поставщика предоставить доступ к репозиторию git. Если это невозможно, я рекомендую вам использовать рабочий процесс 1. Если вам нужно серьезное обновление (например, переход с GB на ICS), вам все равно потребуются исходные коды новых поставщиков. Незначительные обновления могут быть сделаны поверх существующих источников.

person werewindle    schedule 24.04.2012
comment
Спасибо за ответ. На самом деле у моего поставщика есть общедоступный репозиторий GIT, но источник, который мне нужно взять, - это конкретный тег. Я попробую этот рабочий процесс, надеюсь, он будет эффективным - person skoperst; 24.04.2012