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

Как в DaVinci DM365 загрузить файловую систему в NAND по TFTP

Здравствуйте все!

Я читал статью Игоря Гука "Отладочная плата HawkBoard на базе процессора OMAP-L138". Там в первой части двумя командами загружаются по TFTP в оперативную память сначала ядро, а потом файловая система:

$tftp c0700000 uImage_v1

$tftp c1180000 ramdisk_v1.gz

Научите, пожалуйста, на пальцах, или подскажите, где почитать, про следующее:

1) Как вычислять адреса для такой загрузки?

2) Как после этого загружать файловую систему в NAND насовсем (ядро ОС я уже научился туда загружать)?

3) Можно ли так поступать не с ramdisk, а с jffs2, например?

Заранее признателен.

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


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

И ещё: существует ли для DM365 возможность залить во FLASH память ядро и файловую систему как-то попроще, не поднимая NFS, DHCP и прочее? Просто через последовательный порт, например? Я как представлю себе, что пишу инструкцию для серийного производства, а потом меня регулировщики трясут, так грустно становится.

Заранее признателен.

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


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

1) Как вычислять адреса для такой загрузки?

Выбрать разумные исходя из карты памяти u-boot, дабы не затереть его в процессе.

 

2) Как после этого загружать файловую систему в NAND насовсем (ядро ОС я уже научился туда загружать)?

Не совсем понятен вопрос. Таким же образом, как и ядро.

 

3) Можно ли так поступать не с ramdisk, а с jffs2, например?

...

И ещё: существует ли для DM365 возможность залить во FLASH память ядро и файловую систему как-то попроще, не поднимая NFS, DHCP и прочее?

По-моему, наиболее удобный вариант - сделать загрузочную SD-карту. На ней можно разместить скрипты для автоматизации проверки и программирования платы. Регулировщику останется только включить питание и читать вывод в терминале.

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


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

Большое спасибо!

Выбрать разумные исходя из карты памяти u-boot, дабы не затереть его в процессе.

То есть знать размеры u-boot и ядра и укладывать файловую систему на оставшееся место?

 

Не совсем понятен вопрос. Таким же образом, как и ядро.

Допустим, я положил во flash-память ядро и файловую систему по неким адресам. Как ядро узнает, где лежит файловая система? Из окружения u-boot?

 

По-моему, наиболее удобный вариант - сделать загрузочную SD-карту. На ней можно разместить скрипты для автоматизации проверки и программирования платы. Регулировщику останется только включить питание и читать вывод в терминале.

Спасибо, хорошее дело. Но тогда придётся установить на плату разъём для карты, а места у меня очень мало. Принципиально можно обойтись только COM-портом? Или хотя бы комбинацией COM-порта и TFTP?

 

Заранее признателен.

 

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


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

То есть знать размеры u-boot и ядра и укладывать файловую систему на оставшееся место?

Примерно так.

 

Допустим, я положил во flash-память ядро и файловую систему по неким адресам. Как ядро узнает, где лежит файловая система? Из окружения u-boot?

Узнает из командной строки, переданной u-boot'ом (bootargs).

 

Спасибо, хорошее дело. Но тогда придётся установить на плату разъём для карты, а места у меня очень мало. Принципиально можно обойтись только COM-портом? Или хотя бы комбинацией COM-порта и TFTP?

Можно обойтись только COM-портом. Просто это медленно очень.

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


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

Можно обойтись только COM-портом. Просто это медленно очень.

А как? Serial Flasher принимает только два файла: UBL и u-boot. Или у него есть недокументированные возможности? Подскажите, пожалуйста, где посмотреть?

Заранее признателен.

 

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


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

А как? Serial Flasher принимает только два файла: UBL и u-boot.

Получается два этапа:

1. Загружаем на плату u-boot

2. В u-boot'е догружаем остальное через COM-порт (loady)

 

Но лучше изыскать любую возможность для вывода скоростного интерфейса, хоть бы и USB, например. Грузить большие объемы через COM-порт - удовольствие сомнительное.

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


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

Получается два этапа:

1. Загружаем на плату u-boot

2. В u-boot'е догружаем остальное через COM-порт (loady)

Но лучше изыскать любую возможность для вывода скоростного интерфейса, хоть бы и USB, например. Грузить большие объемы через COM-порт - удовольствие сомнительное.

Спасибо большое!

Скорее всего, это будет TFTP, он у меня запустился под Windows, и Ethernet в устройстве будет. А под виртуальной машиной Linux ничего не заработало на втором адаптере - ни DHCP, ни TFTP, ни NFS.

Да и минут 5 на прошивку - вроде ничего.

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


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

Спасибо большое!

Скорее всего, это будет TFTP, он у меня запустился под Windows, и Ethernet в устройстве будет. А под виртуальной машиной Linux ничего не заработало на втором адаптере - ни DHCP, ни TFTP, ни NFS.

Да и минут 5 на прошивку - вроде ничего.

А у Вас, случаем, NFS под Windows не заработало? Я тоже TFTP под Windows поднял, а NFS не смог. А под виртуальной машиной Linux всё отлично ставится: и TFTP, и NFS - это в документации к SDK описано.

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


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

Отвечу за Дмитрия - работало. Только что и как - не помню ни разу. Вроде довольно близко к объяснениям от Техаса.

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


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

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

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

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

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

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

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

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

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

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