Перейти к содержанию
    

Отвечу на вопросы по PowerQUICC

На страничке 8349-го есть пара ссылок на стэки - CMX и MQX

 

http://www.cmx.com/tcpip.htm

 

http://www.embedded-access.com/products/rt...cpip_stack.html

 

Я думаю что можно их перетащить на 8315 при большом желании, разница между этими процессорами не должна быть сильно большой.

 

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

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На страничке 8349-го есть пара ссылок на стэки - CMX и MQX

Да, MQX очень и очень неплох, правда, там не все драйвера для TSEC-ов в исходниках удалось найти - хотелось "подглядеть", когда свой стек портировался.

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

Жаль, цифры были бы интересны.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

На страничке 8349-го есть пара ссылок на стэки - CMX и MQX

 

http://www.cmx.com/tcpip.htm

 

http://www.embedded-access.com/products/rt...cpip_stack.html

 

Я думаю что можно их перетащить на 8315 при большом желании, разница между этими процессорами не должна быть сильно большой.

 

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

 

Я разговаривал с Embedded Access. Свободной версии нет. Это - коммерческий продукт (MQX для MPC8315 c поддержкой платы MPC8315 rdb) стоимостью 20kUSD. За стэк они просят 9k.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

привет.

 

у нас платка с MPC8360A.

 

Не получается линукс запустить... Не подскажешь,есть там какиенить подводные камни по настройке?

 

Юбут вроде стартует нормально:

U-Boot 2010.06 (Sep 13 2010 - 13:49:41) MPC83XX

 

Reset Status: Software Hard, External/Internal Soft, External

 

CPU: e300c1, MPC8360A, Rev: 2.1 at 528 MHz, CSB: 264 MHz

Board: E836

I2C: ready

DRAM: 256 MiB (DDR2, 64-bit, ECC on, 264 MHz)

FLASH: 16 MiB

In: serial

Out: serial

Err: serial

Net: FSL UEC3, FSL UEC0

 

=> boot

## Booting kernel from Legacy Image at fe050000 ...

Image Name: Linux Kernel Image

Image Type: PowerPC Linux Kernel Image (gzip compressed)

Data Size: 1262679 Bytes = 1.2 MiB

Load Address: 00010000

Entry Point: 00010000

Verifying Checksum ... OK

Uncompressing Kernel Image ... OK

 

## Transferring control to Linux (at address 00010000) ...

Booting using board info...

 

И всё дальше тишина. Потом вроде управление должно перейти на файл из ядра

head_32.S но чет в нём не знаю даже как отладку вывести.

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Uboot и линукс откуда взяты? Из фрискейловского BSP на 8360 плату? Патчи все приложены?

Память DDR проверили на работоспособность?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Юбут собран с небольшой правкой конфига mpc8360emds.h.

ядро соотвественно тоже.

память рабочая. поскольку в юбуте просматривал через md ту область куда ядро распакуется.

ядро стартует по адресу 0x00010000. удается даже поставить брекпоинт на этот адрес. И при выполненении следующего шага

PC становится равен 0x6fc.

Может хотяб алгоритм для отладки можете посоветовать...

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Юбут собран с небольшой правкой конфига mpc8360emds.h.

ядро соотвественно тоже.

Напишите более подробно, что собирали, чем собирали, и так далее.

 

ядро стартует по адресу 0x00010000. удается даже поставить брекпоинт на этот адрес. И при выполненении следующего шага

PC становится равен 0x6fc.

Что за инструкция лежит по этому адресу? Какой дебагер? Какой брекпоинт? Софтварный? Софтварный брекпоинт это и есть exception 0x700.

 

Может хотяб алгоритм для отладки можете посоветовать...

Алгоритм отладки линуксового ядра посоветовать не могу.

CodeWarrior Linux Platform Edition его вроде бы может дебагать, но ни разу не пробовал.

Изменено пользователем _SY_

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Спасибо за ответы.

 

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

 

1. Скачиваю юбут последнюю версию. Правлю конфиг под свою платку.Собираю компилятором который был получен из openwrt. Патчей не каких не накладывал.

2. Флешка начинается с адреса 0xfe000000. по этому адресу и пишу u-boot.bin. юбут стартанул. корректоно проинициализировав оперативку,флэш,езернет.

3. Скачиваю последнюю версию ядра.Собираю тем же кросс-компилятором.Патчей не накладывал. Из директории kernel/arch/powerpc/boot/ беру файл zImage и подгатавливаю спомощью утилиты юбута для заливки. указавав Load Address 0x00000000 и Entry Point 0x00000000.

4. заливаю образ по адресу 0xfe050000. как видно юбут раскрывает образ корректно и передает управление ядру. Дальше ничего.

 

Еще вот такой вопрос. есть некий файл mpc8360ece.dtb на диске который идет с платкой фрискэйла 8360RDK. И вроде он тож заливается во влеш судя по мануалу. Он нужен мне?

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

dtb это device tree без него ядро не будет работать. В документации kernel есть документация как писать этот device tree, в каталоге /documentation/powerpc/dts-binding/

 

Честно говоря нету опыта с кросскомпилятором из openwrt, проще всего по-моему взять готовый BSP на плату 8360.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

блин. а если в двух словах...то куда писать этот dtb и откуда ядро будет знать о нем?

т.е. без dtb линукс не стартанет на powerpc чтоли?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Вы ядро какой командой Uboot-а запускаете? Если "bootm", то там в явном виде необходимо указать адрес device tree

Вот с сайта Uboot-а:

 

http://www.denx.de/wiki/DULG/UBootCmdGroupExec

 

Usage:

bootm [addr [arg ...]]

- boot application image stored in memory

passing arguments 'arg ...'; when booting a Linux kernel,

'arg' can be the address of an initrd image

When booting a Linux kernel which requires a flat device-tree

a third argument is required which is the address of the

device-tree blob.

 

Ядро без dtb не будет работать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ок.

получается dtb собирается из dts с помощью компилятора dtc. а dts где взять? Стандартный который лежит в boot/dts/ наверно же неподойдет. Самому править его?

Изменено пользователем neiro80

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Да, писать самостоятельно dts, потом компилировать с помощью компилятора dtc и получать на выходе dtb.

 

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Можно еще вопрос про отладку задать.

 

Пытаюсь средствами gdb и bdi2000 отладить u-boot.

Интересует вот сам алгоритм. У меня получается отлаживаться до того момента пока не отработала функция cpu_init_f. Собственно в этой функции происходит relocation. и дальше видимо теряется контроль над отладкой.

Вот тут рассказано как надо делать http://www.denx.de/wiki/DULG/DebuggingUBoot

Ну и собственно вопрос (поскольку не получается повторить)...так и надо делать?

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Ну видимо да. С отладкой U-boot опыта нету, извините. Он обычно как-то работает.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...