Портирование на новое ядро (от HTC, Motorola)

Взгляд изнутри

Модератор: Модераторы разделов

Ответить
Аватара пользователя
KefirNet
Сообщения: 34
ОС: Mandriva 2010.1

Портирование на новое ядро

Сообщение KefirNet »

Подскажите, как осуществляется процесс переноса измененного когда на более новое ядро?

Вот есть исходники от HTC ядра версии 2.6.32, как исходя из них собрать рабочее ядро 2.6.39 для моего устройства?
Спасибо сказали:
Аватара пользователя
deadhead
Сообщения: 1913
Статус: zzz..z

Re: Портирование на новое ядро

Сообщение deadhead »

Как вариант, взять diff между этими ветками. Как только diff получен возможны следующие пути портирования:
1. HTC специфичные участки кода 32-го переносить в новое ядро. Сей процесс известен как forwardporting
2. Требуемый функционал из 39-го переносить в старое ядро. Сей процесс известен как backporting
3. Заб[иы]ть :-)

P.S.
Backporting vs forward porting
[x] close
Спасибо сказали:
Аватара пользователя
KefirNet
Сообщения: 34
ОС: Mandriva 2010.1

Re: Портирование на новое ядро

Сообщение KefirNet »

Спасибо! Ну понятно..

А где можно почитать о бэкпортировании на конкретном примере? Что-то ничего не могу найти..
Спасибо сказали:
Аватара пользователя
deadhead
Сообщения: 1913
Статус: zzz..z

Re: Портирование на новое ядро

Сообщение deadhead »

KefirNet писал(а):
13.07.2011 04:02
А где можно почитать о бэкпортировании на конкретном примере? Что-то ничего не могу найти..
Думаю что полноценных печатных трудов по данному вопросу так просто не найти...
Вот в качестве тривиального примера:
сей патч, впервые появившийся в v2.6.36-rc4 был бэкпортирован в 2.6.35-longterm.

Если вам нужно бэкпоритровать вполне конкретный функционал, а не все подряд, то могу посодействовать в этом начинании ;-)
[x] close
Спасибо сказали:
Аватара пользователя
KefirNet
Сообщения: 34
ОС: Mandriva 2010.1

Re: Портирование на новое ядро

Сообщение KefirNet »

Тогда как мне узнать, какой код ядра используется моим устройством?

Ведь доступны исходники всего ядра, с кучей архитектур и ненужных мне фич, а как выделить тот код, который собирается под моё устройство?
Спасибо сказали:
Аватара пользователя
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Контактная информация:

Re: Портирование на новое ядро

Сообщение sash-kan »

KefirNet писал(а):
19.07.2011 17:34
Тогда как мне узнать, какой код ядра используется моим устройством?
ищите каталог с именем, совпадающим с именем модуля, в drivers/
Писать безграмотно - значит посягать на время людей, к которым мы адресуемся, а потому совершенно недопустимо в правильно организованном обществе. © Щерба Л. В., 1957
при сбоях форума см.блог
Спасибо сказали:
Аватара пользователя
deadhead
Сообщения: 1913
Статус: zzz..z

Re: Портирование на новое ядро

Сообщение deadhead »

sash-kan писал(а):
19.07.2011 20:00
ищите каталог с именем, совпадающим с именем модуля, в drivers/
Во встраиваемых устройствах в модули выносится разве что закрытый функционал... хотя бывают и исключения... :-)
KefirNet писал(а):
19.07.2011 17:34
Тогда как мне узнать, какой код ядра используется моим устройством?
для начала определитесь с архитектурой, на каком SoC реализовано ваше устройство. Эта информация позволить сузить круг поиска. Так все-таки какие же "фитчи" 39-го вас заинтересовали?
[x] close
Спасибо сказали:
Аватара пользователя
KefirNet
Сообщения: 34
ОС: Mandriva 2010.1

Re: Портирование на новое ядро

Сообщение KefirNet »

Да, там по-сути модулями идёт только Wi-Fi от Broadcomm и радиомодуль.

ARM, Qualcomm Snapdragon QSD8250. Сам девайс HTC HD2, изначально на Windows Mobile, на него написан альтернативный загрузчик и портирован Android с ядром 2.6.32.15.

39 я для примера привёл, а вообще есть проблемы с энергосбережением и неполной совместимостью с Android 2.3, у которого 2.6.35. И в .32 есть проблемы с производительностью NAND\SSD памяти.
Хотелось иметь соответствующее системе ядро, тем более что есть много устройств на этом же SoC с полностью доступным актуальным исходным кодом (Google Nexus One, например).
Спасибо сказали:
Аватара пользователя
deadhead
Сообщения: 1913
Статус: zzz..z

Re: Портирование на новое ядро

Сообщение deadhead »

KefirNet писал(а):
19.07.2011 21:23
ARM, Qualcomm Snapdragon QSD8250.

grep Qualcomm arch/arm/mach-msm/Kconfig
prompt "Qualcomm MSM SoC Type"
menu "Qualcomm MSM Board Type"
Support for the Qualcomm SURF7201A eval board.
Support for the Qualcomm MSM7x30 SURF eval board.
Support for the Qualcomm QSD8x50 SURF eval board.
Support for the Qualcomm ST1.5.
Support for the Qualcomm MSM8x60 RUMI3 emulator.
Support for the Qualcomm MSM8x60 SURF eval board.
Support for the Qualcomm MSM8x60 simulator.
Support for the Qualcomm MSM8x60 FFA eval board.
Support for the Qualcomm MSM8960 simulator.
Support for the Qualcomm MSM8960 RUMI3 emulator.
Support for the IOMMUs found on certain Qualcomm SOCs.

Собственно SoC специфичный код находится в arch/arm/mach-msm/, но, думаю, здесь ничего портировать не придется... кстати можно ссылку на адаптированное .32?
KefirNet писал(а):
19.07.2011 21:23
а вообще есть проблемы с энергосбережением и неполной совместимостью с Android 2.3, у которого 2.6.35. И в .32 есть проблемы с производительностью NAND\SSD памяти.
Хотелось иметь соответствующее системе ядро
Энергосбережение зависит не только от ядра, но и от пользовательских приложений. Вы твердо уверенны, что текущие проблемы с энергосбережением разрешатся обновлением ядра? То же относится и к флеш памяти.Также хочется узнать вам хочется иметь новое ядро или же новый андройд?
[x] close
Спасибо сказали:
Аватара пользователя
KefirNet
Сообщения: 34
ОС: Mandriva 2010.1

Re: Портирование на новое ядро

Сообщение KefirNet »

Да, вот актуальные - http://gitorious.org/~tytung/linux-on-winc...tc/trees/master
И получается /arch/arm/mach-msm/board-htcleo-* - это код, частично портированный, частично написанный с нуля под моё устройство. Его в других исходниках, естественно, не будет. Его можно будет просто добавить в новое ядро?

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


Не уверен, но хочется верить, что новое ядро может помочь, раз уж Google собирает 2.3 с новой версией ядра, они и вносят туда изменения, соответвующие системе.
Хочется и новый андройд, и новое ядро.
Спасибо сказали:
Ответить