|
s3c2416 начальная загрузка, подробности... |
|
|
|
 |
Ответов
(15 - 29)
|
Feb 9 2011, 21:41
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(Dron_Gus @ Feb 9 2011, 08:21)  В крайнем случае будете долго и нудно лить образ по x-modem'у в убут. JTAG то есть. Целая коллекция. В том числе кабель на пар порт от этой платы. Но еще не подключал: для 2440 было не надо. А вот xmodem (вернее Ymodem) - идея неплохая. 3 минуты можно потерпеть. Но все же Вы писали что загружали через USB. Как? В моем убуте есть команда "dnw" которая должна включать USB, но не похоже чтобы работала... И неужели никто не научился писать MMC чтобы загружались? Я даже подозреваю что из за другой главной платы какие то конигурационные ножки не туда подключены. Только какие?
|
|
|
|
|
Feb 10 2011, 09:48
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(Dron_Gus @ Feb 10 2011, 00:58)  Я грузил через жтаг во внутреннюю память програмку, она уже принимала файло по USB через DNW. Програмка на базе SMDK2450_2416_2451_TEST.zip. Попробовал через ymodem и все состоялось - свой kernel загрузил. С сожалению под линуксом NAND не пишется. dd ругается. Видимо первые два раздела определены только на чтение. А где раздобыть SMDK2450_2416_2451_TEST.zip? Может поделитесь? Перечисленные конфигурационные ножки вроде в порядке. Стоят на все резисторы на модуле, так что не понятно каким образом у меня ровно один раз сработало... Дополнение: Нашел 114453SMDK2450_2416_2451_TEST.zip Но если не жалко поделиться работающей приладой, буду признателен. Дополнение 2: нашел программу moviNAND_Fusing_Tool-512K-boot.exe и KIT2416-uboots-zImage.rar здесь: http://openembed.org/wiki/KIT2416-Linux_PortingТот же результат
|
|
|
|
|
Feb 10 2011, 11:13
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Послал. Цитата(Dron_Gus @ Feb 10 2011, 02:58)  А утилита по вашей ссылке несколько сложнее, чем та, что у меня.  она записывает не только u-boot но еще и ядро и образ диска по физическим секторам на MMC. Еще бы 2416 это читал...
|
|
|
|
|
Feb 10 2011, 11:55
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(Dron_Gus @ Feb 10 2011, 03:36)  Да. Только загркзчика, чтобы это все читать я не находил. А если писать свой, то можно к нему FAT прикрутить. Чтобы проще было. Должен u-boot это читать. Инструкция такая: 1. Burn the u-boot.bin, zImage, rootfs.yaffs to the sd card with the uboot_write.exe tools. The method is the same as that i told you last time. 2. Copy qt-4.6-image-ok.tar.bz2 to Sd card. 3. Insert the SD card, and then boot into uboot command mode. 4. Run the follow command in uboot command: nand scrub nand erase movi read 3800000# 40000 c0000000 nand write c0000000 0 40000 movi read kernel c0000000 nand write c0000000 40000 200000 movi read 3600000# 3C65040 c0000000 nand write.yaffs c0000000 400000 3C65040 set bootcmd "movi read kernel 0xc0200000;bootm 0xc0200000" set bootargs "noinitrd console=ttySAC0,115200 root=/dev/mtdblock2 rootfstype=yaffs2 init=/linuxrc" saveenv 5.reboot the board, and enter the linux system command mode. От себя добавлю что делать nand scrub и nand erase до того как все гарантировано читается с MMC - прямой путь к форсированному изучению JTAG-а.
|
|
|
|
|
Feb 10 2011, 21:11
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(Dron_Gus @ Feb 10 2011, 04:22)  У-бут занимает от 100 Кб. А iROM грузит во внутреннюю память 8 Кб. Так что есть еще промежуточный загрузчик. Я так понял что u-boot на MMC разбит на 2 части. 8К живет на последних секторах (кроме 2х совсем последних). Она инициализирует память и должна загружать основную часть u-boot. Не исключено (надо смотреть исходники) что у меня именно эти 8К грузятся и пишут ОК, а остальное не работает. Теперь еще вопрос. А как собственно через jtag грузить код? Если бы я пользовался KEIL или IAR тулзами то наверное там есть опция загрузки через jtag. У меня пока установлен H-JTAG который успешно видит процессор, но дальше нужна какая то прилада. Существует программа sjf2410 которая пишет через jtag прямо в флеш. А как в память? Может OPEN OCR надо? Или что посоветуете?
|
|
|
|
|
Feb 11 2011, 10:42
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
Цитата(Dron_Gus @ Feb 11 2011, 01:42)  Я OpenOCD + GDB пользую. Инициализируете внешнюю память и грузите прямо туда. Примеры смотрите, например, в инит-скриптах от mini2440. И я к тому же пришел. С процессором говорю через OpenOCD. load_image тоже вроде работает. Расскажу если будет полный успех. Спасибо.
|
|
|
|
|
Feb 13 2011, 11:42
|

Профессионал
    
Группа: Свой
Сообщений: 1 202
Регистрация: 9-01-05
Из: Санкт-Петербург
Пользователь №: 1 861

|
Цитата(alexf @ Feb 13 2011, 02:01)  Зато нарыл совсем простой код "vboot" который собирается легко. Буду его запускать с ММС а там посмотрим. Это что-то специализированное? Не поделитесь? Вчера тоже добился нормальной загрузки spl и u-boot на 6410. Грабли на которые я наступал: повторная инициализация памяти в основном у-буте (вызывало падение без отладчика, под отладчиков все было ок), повторная инициализация клоков, неправильный релокэйт (это появилось в последних у-бутах). Кстати, прошивалка rom_flush_tool просит файл (.nb0) в формате .sre. Я посмотрел, у тех файлов, что шли с различными отладками,перед началом самого образа идет небольшой заголовок. Может в этом проблема? З.Ы. то еще развлечение.
--------------------
Если сверху смотреть, то сбоку кажется, что снизу ничего не видно.
|
|
|
|
|
Feb 13 2011, 22:39
|
Местный
  
Группа: Свой
Сообщений: 420
Регистрация: 22-12-04
Пользователь №: 1 608

|
>>Это что-то специализированное? Не поделитесь? Охотно. Это простая как веник программа для загрузки Линукса не задавая вопросов. Тупо читает образ из NAND, инициализирует параметры и вперед. Я думаю не составит особого труда поменять чтение образа с NAND на SD. Прога собирается по простому GCC который мы знаем и любим  Бинарник 2К так что не надо даже грузить второй части в SDRAM. План такой: 1. вместо загрузки ядра вставить примитивный "монитор" чтобы убедиться что загрузка работает. 2. добавить инициализацию SDRAM -почему то там нет. Сделано для какой то системы со статической памятью похоже. Добавление: сделал. Работает. Т.е. кладу слегка поправленый vboot на SD карточку с помощью uboot_writer.exe и оно грузится при холодном старте и инициализирует SDRAM и пишет на консоль. Может будет полезно в окончательном варианте в качестве максимально быстрого загрузчика. А пока наверное наиболее продуктивно будет разобраться с jtag+gdb почему u-boot умирает. А KIT6410 у меня тоже есть но еще руки не дошли. Сначала 2416. Может хватит пока скорости.
vboot_20100106.zip ( 17.65 килобайт )
Кол-во скачиваний: 213Кстати поставил CrossWorks который собрал Ваш код, естественно, только в нем нет симулятора. Или его надо где то отдельно искать? Жаловался на отсуствие DLL в targets. Из всем моей коллекции JTAG коробочек ни одну он не поддерживает. Заказал еще J-LINK до кучи... >>то еще развлечение. Ага. Особенно в выходной
|
|
|
|
|
  |
2 чел. читают эту тему (гостей: 2, скрытых пользователей: 0)
Пользователей: 0
|
|
|