Официальный форум СВД Встраиваемые Системы
10 Декабря, 2016, 15:45:36 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.

Войти
 
 
 Сайт СВД ВС  Начало   Помощь Поиск Войти Регистрация  
Страниц: [1]   Вниз
  Печать  
Автор Тема: проблемы с QNX на отладочной плате Atmel  (Прочитано 2214 раз)
ston
Интересующийся

Сообщений: 1


« : 04 Апреля, 2010, 10:31:51 »

Впервые пытался установть QNX6.4 на отладочную плату AT91SAM9260-ek .

пож. прокомментируйте возникшие сложности.

1. После прошивки образа с помощью ARM-ICE Jtag интерфейса и программы SAM-BA:
-Выключаю и включаю питание на отладочной плате.
-Последний прошитый образ QNX начинает загружаться.
-Вынимаю USB - разъем ARM-ICE интерфейса.
-Выключаю и включаю питание на отладочной плате.
-Вижу только Rom-boot>, образ QNX не загружается. ( Т.е., по логике начального загрузчика, не происходит определение Dataflash, не считывается и не запускается
вторичный загрузчик IPL. )
- Вставляю USB - разъем ARM-ICE интерфейса.
- Выключаю и включаю питание на отладочной плате.
--Последний прошитый образ QNX начинает загружаться.

Вопрос: как соединение по интерфейсу ARM-ICE Jtag влияет на работу Rom-Boot загрузчика?

2. Cейчас прошит образ, который при выполнении стартового скрипта после загрузки драйверов выполняет
ifconfig 192.168.105.25 netmask 255.255.0.0 up
qconn &

после этого
- проходят пинги в двух напрявлениях между ПК и отладочной платой
- среда разработки IDE Momentics в перспективе System Information Perspective устанавливает связь с ОС QNX отладочной платы и показывает разную
системную информацию. Проблема: связь рвется через некоторе время! Не пойму причины этого. Наблюдаю, что ping-и идут очень медленно, вместо
3 мс - до 1000 мс с разбросом 500-1500 мс. М.б. поэтому связь со средой разработки и рвется...


Записан
Владимир Махилёв
Сотрудник СВД ВС
Ветеран

Сообщений: 659



WWW
« Ответ #1 : 05 Апреля, 2010, 14:32:48 »

По поводу прошивки образа есть инструкция на сайте QNX - Release Notes for the QNX Neutrino 6.4.0 BSP for Atmel AT91SAM9260-EK Board
Чтобы сказать почему RomBOOT не передаёт управление на IPL нужно разбираться с настройками конкретной платы, документацией и BSP.
 
По поводу проблем с сетью в Release Notes пишут
Цитировать
Known Issues for This BSP

    * Network driver drops packet due to transmitter under run. A known HW limitation with the Ethernet transmitter and usage of slow SDRAM memory will cause the transmitter to generate under run and flush all packets/fragments in the transmitter queue. For more details about this problem refer to the Atmel AT91SAM9260 reference manual “EMACB Errata” for more details.

В обсуждении на foundry27 ( AT91SAM9260-EK networking with qnx ) советуют использовать USB-Ethernet адаптер.
Записан

LH
Опытный пользователь

Сообщений: 254


« Ответ #2 : 11 Апреля, 2010, 05:48:10 »

На отладочной плате AT91SAM9260-EK QNX загружается с Dataflash и работает ( кроме драйвера Ethernet-контроллера ).

Теперь вместо образа QNX записал на Dataflash загрузчики Bootstrap и U-boot, бинарные файлы которых взял отсюда
http://www.at91.com/linux4sam/bin/view/Linux4SAM/

U-boot заработал и позволил по tftp загружать собранный образ ( без ipl ) из IDE ( для загрузки по tftp свойство Bootfile заменил с binary на raw ).

После прыжка на начальный адрес образа go ox21000000 начинается загрузка, которая нормально отражается в консоли
до момента старта devc-serdebug. А дальше - начинается "абракадабра" символов, похоже на рассогласование настройки отладочного
COM-порта со стороны QNX и консоли в IDE. ( содержание вывода  в консоль - во вложении ).

Цитировать
display_msg Starting DBGU driver...
devc-serdebug -e -F -S -b115200 -c50000000 0xfffff200,1

Не понятно: почему такое происходит, ведь с Dataflash и через U-boot загружается один и тот же образ (правда во втором случае - без
запуска IPL) ?

Записан
LH
Опытный пользователь

Сообщений: 254


« Ответ #3 : 27 Апреля, 2010, 19:40:06 »

Пож. поясните: какая область физической памяти ARM-контроллера  используется QNX-ом, если загружаемый образ собран с адреса 0x21000000?

Можно ли при собрке образа указать, что ОС дропускается использовать ограниченный размер физической памяти, можно ли указать начальный адрес и размер доступных двух "кусков" физической памяти?

Каким образом QNX устанавливает рамер доступной к использованию памяти при загрузке?

Cпасибо.
Записан
Андрей Сеньков
Администратор
Опытный пользователь

Сообщений: 262



WWW
« Ответ #4 : 28 Апреля, 2010, 14:47:03 »

Сразу выскажу общее замечание: адаптация BSP - это задача, требующая основательных знаний в области построения встраиваемых систем для QNX, иначе большинство задаваемых вопросов будут некорректными и противоречивыми. Настоятельно рекомендуем внимательно прочитать раздел документации "Building Embedded Systems", доступной, например, по следующей ссылке:
http://www.qnx.com/developers/docs/6.4.1/neutrino/building/about.html
Другим вариантом является заказная доработка BSP.

Пож. поясните: какая область физической памяти ARM-контроллера  используется QNX-ом, если загружаемый образ собран с адреса 0x21000000?
Строго говоря, физическая память контроллера - это не только RAM, но и память устройств и другие области памяти.
Какие адреса будут задействованы образом ОС или данными программ в этом образе зависит от формата (binary, elf, raw, etc), от того сжат ли образ и по какому адресу он будет загружен.

Можно ли при собрке образа указать, что ОС дропускается использовать ограниченный размер физической памяти, можно ли указать начальный адрес и размер доступных двух "кусков" физической памяти?
Обычно, это настраивается в startup-модуле в функции init_raminfo().

Каким образом QNX устанавливает рамер доступной к использованию памяти при загрузке?
В общем случае, на основании информации о размере RAM и памяти, занятой образом и ядром, определяется размер памяти, доступной другим программам.

Опять таки, необходимо тщательно изучать общую документацию и относящуюся к конкретной плате и BSP.
Записан

LH
Опытный пользователь

Сообщений: 254


« Ответ #5 : 04 Мая, 2010, 16:00:58 »

Спасибо за предыдущий ответ.

Выполняю сборку образа в IDE из  BSP-ATMEL-AT91SAM9260-EK ,  смотрю полученный образ BSP-ATMEL-AT91SAM9260-EK.ifs
с помощью dumpifs и не вижу символической ссылки:

usr/lib/ldqnx.so.2 -> /proc/boot/libc.so.3 ,

хотя в BSP-ATMEL-AT91SAM9260-EK.bsh присутствует строка:

procmgr_symlink ../../proc/boot/libc.so.3 /usr/lib/ldqnx.so.2

И только если в ручную в project.bld  в ветке Symbolic Links описываю данную ссылку, она становится
видна при просмотре собранного образа с помощью dumpifs.

Что не так, и как отсутствие ссылки usr/lib/ldqnx.so.2 в образе может повлиять на выполнение программ,
которые используют ldqnx.so.2?

Спасибо.

Записан
LH
Опытный пользователь

Сообщений: 254


« Ответ #6 : 05 Мая, 2010, 14:47:38 »

Прошу прощения, кажется я зря беспокоился: в ходе загрузки образа строка

procmgr_symlink ../../proc/boot/libc.so.3 /usr/lib/ldqnx.so.2

образует нужную символическую ссылку.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  

Powered by MySQL Powered by PHP © 2002-2016 СВД Встраиваемые Системы.
При использовании материалов сайта ссылка на forum.kpda.ru обязательна.

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines | © Aiwan. Kolobok smiles | Sitemap
Valid XHTML 1.0! Valid CSS!
Сайт СВД ВС

В последний раз google посещал эту страницу 02 Декабря, 2016, 04:45:59