реклама на сайте
подробности

 
 
3 страниц V  < 1 2 3  
Reply to this topicStart new topic
> Сборка ядра под OMAP-L138., При собственой конфигурации виснет после надписи Starting kernel
KPEKEP
сообщение Apr 20 2015, 08:23
Сообщение #31


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 7-11-14
Из: Санкт-Петербург
Пользователь №: 83 567



Цитата(BaN @ Apr 16 2015, 08:58) *
Была похожая проблема, когда записывал ядро в SPI-флешку, при этом я не заметил, что размер ядра был больше, чем раздел под ядро на флешке. В итоге, когда U-boot грузил ядро он мне выкидывал ошибку CRC при загрузке ядра и в выводе так же было "Starting kernel ..." и тишина.
Могу посоветовать начать с U-boot'а - проверьте, полностью ли он грузит ядро или нет.

А как это можно проверить? После этого "Starting kernel ..." в U-boot можно добраться только после перезагрузки
Go to the top of the page
 
+Quote Post
BaN
сообщение Apr 20 2015, 08:49
Сообщение #32


Частый гость
**

Группа: Участник
Сообщений: 144
Регистрация: 28-08-07
Пользователь №: 30 111



Цитата(KPEKEP @ Apr 20 2015, 14:23) *
А как это можно проверить? После этого "Starting kernel ..." в U-boot можно добраться только после перезагрузки

В код u-boot'а добавить вывод отладочной информации в предполагаемых проблемных местах возле вывода "Starting kernel ...", пересобрать и залить на железку.
Go to the top of the page
 
+Quote Post
Jury093
сообщение Apr 20 2015, 13:45
Сообщение #33


Знающий
****

Группа: Участник
Сообщений: 959
Регистрация: 11-01-06
Из: Санкт-Петербург
Пользователь №: 13 050



Цитата(KPEKEP @ Mar 30 2015, 17:03) *
В общем в итоге Starting kernel ... и тишина

если выводит эту строчку, то ядро загрузилось в память и контрольная сумма (CRC) бинарника сошлась..

у вас вероятно срабатывает система "свой-чужой" от юбута до ядра.
юбут при переходе на начало кода ядра передает некие параметры, в т.ч. mach type
если код не совпадает, то ядро останавливает дальнейшую работу..
попробуйте проверить, включив выхлоп отладки в разделе Kernel Hacking->Low level debug..

самая частая причина - использован конфиг не от той борды..
Go to the top of the page
 
+Quote Post
KPEKEP
сообщение Apr 20 2015, 20:44
Сообщение #34


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 7-11-14
Из: Санкт-Петербург
Пользователь №: 83 567



Цитата(Jury093 @ Apr 20 2015, 16:45) *
если выводит эту строчку, то ядро загрузилось в память и контрольная сумма (CRC) бинарника сошлась..

у вас вероятно срабатывает система "свой-чужой" от юбута до ядра.
юбут при переходе на начало кода ядра передает некие параметры, в т.ч. mach type
если код не совпадает, то ядро останавливает дальнейшую работу..
попробуйте проверить, включив выхлоп отладки в разделе Kernel Hacking->Low level debug..

самая частая причина - использован конфиг не от той борды..

-CONFIG_DEBUG_LL включил, по прежнему после Starting kernel ничего не показывает, либо ошибки нет, либо что то я не так сделал (делал через menuconfig -> Kernel Hacking -> Kernel debugging -> Kernel low-level debugging functions -> Early printk)
-Пробовал данный способ, по этому поводу U-boot выдаёт нечитабельную билеберду
-Конфиги пробовал davinci_dm368_ipnc_nfs_defconfig и davinci_dm368_ipnc_ubifs_defconfig, ничего в них не менял
-Есть ещё вопросы, по поводу адреса в который записывается ядро по TFTP у меня качается в 80700000, а ядро пишет Load Address и Entry Point 80008000 это на что то влияет?
-Как понять какой должен стоять console=ttyS в U-boot? С каждым ядром перебираю от 0 до 2, но хотелось бы точно знать что писать (версии с сайта TI, даташита и в документах производителя прошивки разнятся)
-Ещё вопрос: использовал и штатный кросскомпилятор от Arago Project и от CodeSourcery, при сборке ядра, они требуют некие файлы (cmemk.o, edmak.o, irqk.o, dm365mmap.o, drv.o, csl.o), в makefile из штатного RDK, подглядел откуда они берутся, после того, как копирую данные файлы в kernel/drivers/char, ядро успешно собирается, вопрос в том, что ни в одной инструкции по сборке ядра не видел упоминания об этих файлах, это нормально что он их требует?
Go to the top of the page
 
+Quote Post
Jury093
сообщение Apr 21 2015, 08:18
Сообщение #35


Знающий
****

Группа: Участник
Сообщений: 959
Регистрация: 11-01-06
Из: Санкт-Петербург
Пользователь №: 13 050



Цитата(KPEKEP @ Apr 20 2015, 23:44) *
-CONFIG_DEBUG_LL включил, по прежнему после Starting kernel ничего не показывает, либо ошибки нет, либо что то я не так сделал (делал через menuconfig -> Kernel Hacking -> Kernel debugging -> Kernel low-level debugging functions -> Early printk)

в старых ядрах можно было применить "грязный хак" - в асмовом файле в районе arch/arm/kernel/head.$ блокировалась проверка на mach id, ядро грузилось не глядя ни на что и можно было понять происходящее. сейчас даже и не знаю, заглянул в 3.2.0 от ti, ничего похожего..

Цитата
-Пробовал данный способ, по этому поводу U-boot выдаёт нечитабельную билеберду

уверены? белиберда структуирована? может скорость порта меняется..

Цитата
-Конфиги пробовал davinci_dm368_ipnc_nfs_defconfig и davinci_dm368_ipnc_ubifs_defconfig, ничего в них не менял

а в менюконфиг проверяли? например, вы натянули конфиг для семейства dm368, а пункт с вашей бордой выключен - ядро работать не будет..

Цитата
-Есть ещё вопросы, по поводу адреса в который записывается ядро по TFTP у меня качается в 80700000, а ядро пишет Load Address и Entry Point 80008000 это на что то влияет?

это нормально

Цитата
-Как понять какой должен стоять console=ttyS в U-boot? С каждым ядром перебираю от 0 до 2, но хотелось бы точно знать что писать (версии с сайта TI, даташита и в документах производителя прошивки разнятся)

не знаю, что там у семейства dm368, но помнится, что для dm8148 и am33xx имя портов начиналось с ttyO (тут могу подвирать, вечером дома посмотрю). номера вроде как задаются в боард файле (в старых ядрах)

Цитата
-Ещё вопрос: использовал и штатный кросскомпилятор от Arago Project и от CodeSourcery, при сборке ядра, они требуют некие файлы (cmemk.o, edmak.o, irqk.o, dm365mmap.o, drv.o, csl.o), в makefile из штатного RDK, подглядел откуда они берутся, после того, как копирую данные файлы в kernel/drivers/char, ядро успешно собирается, вопрос в том, что ни в одной инструкции по сборке ядра не видел упоминания об этих файлах, это нормально что он их требует?

да, нормально..
раньше к платам можно было скачать полный пакет sdk, который включал в себя кросскомпилятор, исходники (лоадеров, юбута, ядра, утилит для dsp), комплект документации по сборке, скрипты. иногда отдельно шел графический sdk для поддержки графики и видео

итого:
1. поискать, как обойти проверку типа борды
2. проверить типы включенных плат в менюконфиге
3. там же поотключать все в разделе драйверов - оставить только работу с консолью и поддержку портов

update
да, дома посмотрел, вот начало строки для ядра dm8148:
Код
bootargs_mmc=console=ttyO0,115200n8 rootwait root=/dev/mmcblk0p2


Сообщение отредактировал Jury093 - Apr 21 2015, 19:07
Go to the top of the page
 
+Quote Post
KPEKEP
сообщение Apr 27 2015, 08:46
Сообщение #36


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 7-11-14
Из: Санкт-Петербург
Пользователь №: 83 567



Цитата(Jury093 @ Apr 21 2015, 11:18) *
в старых ядрах можно было применить "грязный хак" - в асмовом файле в районе arch/arm/kernel/head.$ блокировалась проверка на mach id, ядро грузилось не глядя ни на что и можно было понять происходящее. сейчас даже и не знаю, заглянул в 3.2.0 от ti, ничего похожего..


У меня ядро 2.6.37, тройку в названии я сам поставил в makefile, чтобы отличать, что грузится моё ядро
Файл arch/arm/kernel/head.$ есть, можно пожалуйста про это по подробнее? Где вообще править этот mach id?

Цитата
уверены? белиберда структуирована? может скорость порта меняется..


скорость порта стоит 115200n8, или она как то ещё может менятся?

Цитата
а в менюконфиг проверяли? например, вы натянули конфиг для семейства dm368, а пункт с вашей бордой выключен - ядро работать не будет..


Вроде конфиг для dm368 подразумевает, что выбран пункт dm368? Посмотрел в System type -> TI DaVinci Implementations -> там вижу ***DaVinci core type*** -> DaVinci 365 based system; ***DaVinci Board Type*** -> TI DM368 IPNC

Цитата
раньше к платам можно было скачать полный пакет sdk, который включал в себя кросскомпилятор, исходники (лоадеров, юбута, ядра, утилит для dsp), комплект документации по сборке, скрипты. иногда отдельно шел графический sdk для поддержки графики и видео


У меня есть штатный SDK, только называется RDK (Reference Design Kit, так и не понял как переводится), там лежат кросскомпилятор штатный от Arago Project, файловая система, документация, схематика и прочее, только с ней я бьюсь уже несколько месяцев, т.к. описания порой не совпадают с действительностью
Go to the top of the page
 
+Quote Post
Tarbal
сообщение Jun 15 2015, 20:52
Сообщение #37


Профессионал
*****

Группа: Свой
Сообщений: 1 351
Регистрация: 21-05-10
Пользователь №: 57 439



Цитата(KPEKEP @ Apr 27 2015, 12:46) *
У меня ядро 2.6.37, тройку в названии я сам поставил в makefile, чтобы отличать, что грузится моё ядро
Файл arch/arm/kernel/head.$ есть, можно пожалуйста про это по подробнее? Где вообще править этот mach id?



скорость порта стоит 115200n8, или она как то ещё может менятся?



Вроде конфиг для dm368 подразумевает, что выбран пункт dm368? Посмотрел в System type -> TI DaVinci Implementations -> там вижу ***DaVinci core type*** -> DaVinci 365 based system; ***DaVinci Board Type*** -> TI DM368 IPNC



У меня есть штатный SDK, только называется RDK (Reference Design Kit, так и не понял как переводится), там лежат кросскомпилятор штатный от Arago Project, файловая система, документация, схематика и прочее, только с ней я бьюсь уже несколько месяцев, т.к. описания порой не совпадают с действительностью


Как посмотреть какой номер у вашей борды:
http://electronix.ru/forum/index.php?showtopic=118559

В конфигурации бут лоадера должен быть выбран именно он и хедер файл с его определением должен быть в правильном месте бут лоадера -- иначе не скомпилируется.

Будут вопросы -- спрашивайте.

Go to the top of the page
 
+Quote Post
KPEKEP
сообщение Jul 10 2015, 11:14
Сообщение #38


Участник
*

Группа: Участник
Сообщений: 15
Регистрация: 7-11-14
Из: Санкт-Петербург
Пользователь №: 83 567



В общем с ядром и файловой системой всё было в порядке, так же подсунул ядро и ФС через TFTP, после чего записал в нанд и всё запустилось, без записи в нанд почему то не работало, это нормально?
Go to the top of the page
 
+Quote Post
MikleV
сообщение Jul 28 2015, 08:14
Сообщение #39


Участник
*

Группа: Участник
Сообщений: 66
Регистрация: 15-05-15
Пользователь №: 86 697



Цитата(KPEKEP @ Jul 10 2015, 14:14) *
В общем с ядром и файловой системой всё было в порядке, так же подсунул ядро и ФС через TFTP, после чего записал в нанд и всё запустилось, без записи в нанд почему то не работало, это нормально?

Если у вас UBIFS и писали с помощью mtd утилит то не затруднит выложить последовательность записи NAND начиная со стирания?
В системе сборки rootfs как-то указывали характеристики конкретной NAND типа PEB LEB?
Go to the top of the page
 
+Quote Post

3 страниц V  < 1 2 3
Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 19th July 2025 - 01:18
Рейтинг@Mail.ru


Страница сгенерированна за 0.01433 секунд с 7
ELECTRONIX ©2004-2016