alexf 0 9 февраля, 2011 Опубликовано 9 февраля, 2011 · Жалоба В крайнем случае будете долго и нудно лить образ по x-modem'у в убут. JTAG то есть. Целая коллекция. В том числе кабель на пар порт от этой платы. Но еще не подключал: для 2440 было не надо. А вот xmodem (вернее Ymodem) - идея неплохая. 3 минуты можно потерпеть. Но все же Вы писали что загружали через USB. Как? В моем убуте есть команда "dnw" которая должна включать USB, но не похоже чтобы работала... И неужели никто не научился писать MMC чтобы загружались? Я даже подозреваю что из за другой главной платы какие то конигурационные ножки не туда подключены. Только какие? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба В у-буте вроде есть функция загрузки. Не пробовал. Я грузил через жтаг во внутреннюю память програмку, она уже принимала файло по USB через DNW. Програмка на базе SMDK2450_2416_2451_TEST.zip. Пины для конфигурации типа загрузки: GPC[5:7] и OM[4:0], смотрите Table 1-5. S3C2416X Operation Mode Description в User Manual'е. Флешку должна уметь писать программа IROM_Fusing_Tool.exe . Я не пробовал толком. Но предстоит. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexf 0 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба Я грузил через жтаг во внутреннюю память програмку, она уже принимала файло по 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 Тот же результат :( Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба Киньте мне письмо на dron_gus(at)mail.ru Если у Вас все эти ноги притянуты резисторами, то надо перепаивать. :) Я поставил кнопку и перетягивал пины GPC5 и GPC7 (кажется) 100-Омными резисторами. А утилита по вашей ссылке несколько сложнее, чем та, что у меня. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexf 0 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба Послал. А утилита по вашей ссылке несколько сложнее, чем та, что у меня. :) она записывает не только u-boot но еще и ядро и образ диска по физическим секторам на MMC. Еще бы 2416 это читал... Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба она записывает не только u-boot но еще и ядро и образ диска по физическим секторам на MMC. Да. Только загркзчика, чтобы это все читать я не находил. А если писать свой, то можно к нему FAT прикрутить. Чтобы проще было. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexf 0 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба Да. Только загркзчика, чтобы это все читать я не находил. А если писать свой, то можно к нему 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-а. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба У-бут занимает от 100 Кб. А iROM грузит во внутреннюю память 8 Кб. Так что есть еще промежуточный загрузчик. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexf 0 10 февраля, 2011 Опубликовано 10 февраля, 2011 · Жалоба У-бут занимает от 100 Кб. А iROM грузит во внутреннюю память 8 Кб. Так что есть еще промежуточный загрузчик. Я так понял что u-boot на MMC разбит на 2 части. 8К живет на последних секторах (кроме 2х совсем последних). Она инициализирует память и должна загружать основную часть u-boot. Не исключено (надо смотреть исходники) что у меня именно эти 8К грузятся и пишут ОК, а остальное не работает. Теперь еще вопрос. А как собственно через jtag грузить код? Если бы я пользовался KEIL или IAR тулзами то наверное там есть опция загрузки через jtag. У меня пока установлен H-JTAG который успешно видит процессор, но дальше нужна какая то прилада. Существует программа sjf2410 которая пишет через jtag прямо в флеш. А как в память? Может OPEN OCR надо? Или что посоветуете? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 11 февраля, 2011 Опубликовано 11 февраля, 2011 · Жалоба Я OpenOCD + GDB пользую. Инициализируете внешнюю память и грузите прямо туда. Примеры смотрите, например, в инит-скриптах от mini2440. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexf 0 11 февраля, 2011 Опубликовано 11 февраля, 2011 · Жалоба Я OpenOCD + GDB пользую. Инициализируете внешнюю память и грузите прямо туда. Примеры смотрите, например, в инит-скриптах от mini2440. И я к тому же пришел. С процессором говорю через OpenOCD. load_image тоже вроде работает. Расскажу если будет полный успех. Спасибо. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 11 февраля, 2011 Опубликовано 11 февраля, 2011 · Жалоба Ок. Буду ждать. Меня тоже интересует загрузка с SD. Правда для s3c6410, но суть та же. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexf 0 12 февраля, 2011 Опубликовано 12 февраля, 2011 · Жалоба JTAG - мощное оружие в руках пролетариата умственного труда. Удалось пока установить что u-boot таки загружается в память. Обе части - сначала 8К которые инициализируют SDRAM и прочее а потом и остальное. Оказалось что схема приложенная к модулю не правильная и тумблер который для 2440 переключал ОМ0 здесь честно включает iROM. Как уже писал с ММС загрузкой пишет ОК и все. Но JTAG говорит что при этом в основной памяти (0xc3e0xxxx) успешно сидит U-boot, только у меня ничего кроме ОК не пишет. Буду разбираться дальше. Ваша утилита к сожалению как есть не работает а пересобрать ее на GCC оказалось большой головняк из за ассемблера. Зато нарыл совсем простой код "vboot" который собирается легко. Буду его запускать с ММС а там посмотрим. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Dron_Gus 2 13 февраля, 2011 Опубликовано 13 февраля, 2011 · Жалоба Зато нарыл совсем простой код "vboot" который собирается легко. Буду его запускать с ММС а там посмотрим. Это что-то специализированное? Не поделитесь? Вчера тоже добился нормальной загрузки spl и u-boot на 6410. Грабли на которые я наступал: повторная инициализация памяти в основном у-буте (вызывало падение без отладчика, под отладчиков все было ок), повторная инициализация клоков, неправильный релокэйт (это появилось в последних у-бутах). Кстати, прошивалка rom_flush_tool просит файл (.nb0) в формате .sre. Я посмотрел, у тех файлов, что шли с различными отладками,перед началом самого образа идет небольшой заголовок. Может в этом проблема? З.Ы. то еще развлечение. :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
alexf 0 13 февраля, 2011 Опубликовано 13 февраля, 2011 · Жалоба >>Это что-то специализированное? Не поделитесь? Охотно. Это простая как веник программа для загрузки Линукса не задавая вопросов. Тупо читает образ из NAND, инициализирует параметры и вперед. Я думаю не составит особого труда поменять чтение образа с NAND на SD. Прога собирается по простому GCC который мы знаем и любим :) Бинарник 2К так что не надо даже грузить второй части в SDRAM. План такой: 1. вместо загрузки ядра вставить примитивный "монитор" чтобы убедиться что загрузка работает. 2. добавить инициализацию SDRAM -почему то там нет. Сделано для какой то системы со статической памятью похоже. Добавление: сделал. Работает. Т.е. кладу слегка поправленый vboot на SD карточку с помощью uboot_writer.exe и оно грузится при холодном старте и инициализирует SDRAM и пишет на консоль. Может будет полезно в окончательном варианте в качестве максимально быстрого загрузчика. А пока наверное наиболее продуктивно будет разобраться с jtag+gdb почему u-boot умирает. А KIT6410 у меня тоже есть но еще руки не дошли. Сначала 2416. Может хватит пока скорости. vboot_20100106.zip Кстати поставил CrossWorks который собрал Ваш код, естественно, только в нем нет симулятора. Или его надо где то отдельно искать? Жаловался на отсуствие DLL в targets. Из всем моей коллекции JTAG коробочек ни одну он не поддерживает. Заказал еще J-LINK до кучи... >>то еще развлечение. Ага. Особенно в выходной :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться