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

 
 
> помогите с u-boot lpc1788
andrewlekar
сообщение Apr 10 2012, 10:55
Сообщение #1


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



Пытаюсь собрать u-boot, но постоянно натыкаюсь на различные трудности. Нужна помощь по следующим вопросам:

1. В start.S есть такая запись

Код
_start:
    .word    CONFIG_SYS_INIT_SP_ADDR
    .word    (reset - _start) | 0x1
    .word    (nmitrap_handler - _start) | 0x1
    .word    (hardfault_handler - _start) | 0x1
    .word    (mpufault_handler - _start) | 0x1
    .word    (busfault_handler - _start) | 0x1
    .word    (usagefault_handler - _start) | 0x1


Зачем тут прибавляется 1 к каждому адресу?
Если оставить как есть, то при запуске сразу сваливается в usagefault_handler, насколько я понимаю.

2. u-boot всегда пытается переместить себя во внешнюю ОЗУ при запуске? Он не умеет работать без релокации с использованием раздельной RAM и ROM?
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
andrewlekar
сообщение May 21 2012, 06:56
Сообщение #2


Знающий
****

Группа: Участник
Сообщений: 837
Регистрация: 8-02-07
Пользователь №: 25 163



Цитата
Если у Вас все работает, что мы тогда тут обсуждаем?

Обсуждаем вроде как, почему странные вещи приходится писать, чтобы заработало. Я же emcraft не обвиняю - просто описываю, какие проблемы возникали и как я их решал.

Цитата
По моему мнению, причины проблем, которые Вы наблюдаете что-то одно из нижеследующего (а может, комбинация этих факторов):

- неверная конфигурация ядра. Если работает код, предназначенный для другой конфигурации или даже для другого процессора, ничего хорошего не получится.

- не та версия toolchain. Код Emcraft Systems работает с конкретной версией GNU Toolchain. Мы пробовали более поздние версии, с ними возникли проблемы. Естественно, их тоже можно заставить работать, но пока не дошли руки.

- какая-то несовместимость с U-boot от NXP (lpcware.com). На самом деле, у нас есть клиент (тоже LPC1788), который тоже взял порт U-boot от lpcware (ему была нужна поддержка NAND Flash, а мы это пока не поддерживаем в U-boot для LPC1788), и он тоже видит похожие проблемы.

- ядро однозначно то самое.
- тулчейн G++ Lite 2011.03.46 uclinux, 2011.03.41 linux gnueabi, 2011.03.42 arm none.
- вот несовместимость с u-boot - это внезапно. Я думал, что u-boot тупо копирует софт и отдаёт управление и дальше никак не влияет (ну где-то environment передаёт ещё)... Но ваш u-boot крайне странно себя вёл, когда я его пытался запустить. То есть как есть он работал нормально, но при любых попытках что-то подправить, всё валилось со странными симптомами. Как-то смахивало на порченую память, что и не удивительно для софта заточенного под работу из внешней озу.
Go to the top of the page
 
+Quote Post
vladimir_kh
сообщение May 21 2012, 11:18
Сообщение #3





Группа: Новичок
Сообщений: 5
Регистрация: 12-07-08
Пользователь №: 38 895



Цитата(andrewlekar @ May 21 2012, 10:56) *
Обсуждаем вроде как, почему странные вещи приходится писать, чтобы заработало. Я же emcraft не обвиняю - просто описываю, какие проблемы возникали и как я их решал.

- ядро однозначно то самое.


Просто из любопытства, какой конфигурационный файл Вы используете для сборки ядра?

Цитата(andrewlekar @ May 21 2012, 10:56) *
- тулчейн G++ Lite 2011.03.46 uclinux, 2011.03.41 linux gnueabi, 2011.03.42 arm none.


Emcraft Systems использует другую версию тулчейн. Я бы начал с того, чтобы перейти на эту версию, про которую известно, что с ней U-boot и Linux работают правильно.

Цитата(andrewlekar @ May 21 2012, 10:56) *
- вот несовместимость с u-boot - это внезапно. Я думал, что u-boot тупо копирует софт и отдаёт управление и дальше никак не влияет (ну где-то environment передаёт ещё)... Но ваш u-boot крайне странно себя вёл, когда я его пытался запустить. То есть как есть он работал нормально, но при любых попытках что-то подправить, всё валилось со странными симптомами. Как-то смахивало на порченую память, что и не удивительно для софта заточенного под работу из внешней озу.


Наш порт U-boot работает из внутренней памяти (код из embedded Flash, данные и стек - в eSRAM).

Приятно знать, что как есть он все же работал нормально.
Go to the top of the page
 
+Quote Post

Сообщений в этой теме
- andrewlekar   помогите с u-boot lpc1788   Apr 10 2012, 10:55
- - GDI   1. Я бы понял это так, что в каждой строке вписыва...   Apr 10 2012, 12:46
- - SII   Если б почитали документацию на архитектуру ARM, а...   Apr 10 2012, 13:56
- - andrewlekar   Погуглил на тему релокации u-boot. Всё-таки он не ...   Apr 11 2012, 05:42
- - GDI   Флешь флеши рознь. Из nand флеша не работает потом...   Apr 11 2012, 08:20
- - andrewlekar   Я искал CONFIG_SKIP_RELOCATE_UBOOT и гуглил про не...   Apr 11 2012, 08:35
- - GDI   Возможно, это просто не реализованно в конкретной ...   Apr 11 2012, 08:51
- - andrewlekar   Ещё подниму тему. В конфигурации u-boot под lpc17...   Apr 24 2012, 07:28
- - andrewlekar   Обновлю тему для потомков. Итак, emcraft выложил ...   May 10 2012, 05:40
|- - vladimir_kh   Цитата(andrewlekar @ May 10 2012, 09:40) ...   May 13 2012, 19:37
- - andrewlekar   "Возможно, это потому, что uClinux использует...   May 14 2012, 04:35
|- - haker_fox   QUOTE (andrewlekar @ May 14 2012, 13:35) ...   May 14 2012, 13:25
- - andrewlekar   ЦитатаДобрый день, а почему бы не передать ядрышку...   May 15 2012, 04:52
|- - vladimir_kh   ++++++++++++++++++++++++++++ "Возможно, это п...   May 16 2012, 04:12
- - andrewlekar   ЦитатаЭто означает, что Вы строите ядро для другог...   May 16 2012, 04:43
|- - vladimir_kh   Цитата(andrewlekar @ May 16 2012, 08:43) ...   May 19 2012, 10:27
- - andrewlekar   ЦитатаПросто из любопытства, какой конфигурационны...   May 22 2012, 05:41
- - Sekila   Цитата(andrewlekar @ May 22 2012, 09:41) ...   Oct 3 2012, 19:07


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

 


RSS Текстовая версия Сейчас: 22nd August 2025 - 05:03
Рейтинг@Mail.ru


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