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

chirik8807

Участник
  • Публикаций

    129
  • Зарегистрирован

  • Посещение

Репутация

0 Обычный

Информация о chirik8807

  • Звание
    Частый гость
  • День рождения 15.12.1988

Контакты

  • Сайт
    http://
  • ICQ
    0

Информация

  • Город
    Карелии
  1. И не подскажите почему в примерах при генерации dts в sopc2dts указывают опцию --bridge-removal all ??
  2. Это я подправил, иначе он не компилировал .dtb )
  3. Всем привет! Взял за основу пример для платы DE10_Standard -> DE10_Standard_GHRD (quartus, qsys, soc_system.dts) 1) Добавил блок Frame Buffer II (и соответственно тестовую таблицу и вывод видео) 2) Добавил в hps еще один интерфейс f2h_sdram1 [attachment=109768:soc_system.rar] Внес изменения в soc_system.dts но в нем есть места в которых я не уверен. мой DE10_GHRD_vip_soc_system.dts: [attachment=109769:DE10_GHR...c_system.txt] Описание в нем Frame Buffer II https://github.com/terasic/linux-socfpga/bl...eo/altvipfb.txt Цитатаalt_vip_vfr_0: vip@0x100010000 { compatible = "altr,vip-frame-reader-1.0"; reg = <0x00000001 0x00010000 0x00000080>; max-width = <640>; max-height = <480>; bits-per-color = <8>; mem-word-width = <128>; }; В нем почему то не строчки с клоком clocks = <&clk_0>; как в других блоках, так и должно быть? По ангиологии поправил описание моста Цитатаhps_0_bridges: bridge@0xc0000000 { compatible = "altr,bridge-16.1", "simple-bus"; reg = <0xc0000000 0x20000000>, <0xff200000 0x00200000>; reg-names = "axi_h2f", "axi_h2f_lw"; clocks = <&clk_0 &clk_0 &clk_0 &clk_0>; clock-names = "h2f_axi_clock", "h2f_lw_axi_clock", "f2h_sdram0_clock", "f2h_sdram1_clock"; #address-cells = <2>; #size-cells = <1>; ranges = <0x00000001 0x00020000 0xff220000 0x00000008>, <0x00000001 0x00030000 0xff230000 0x00000100>, <0x00000001 0x00001000 0xff201000 0x00000008>, <0x00000001 0x00005000 0xff205000 0x00000010>, <0x00000001 0x00004000 0xff204000 0x00000010>, <0x00000001 0x00003000 0xff203000 0x00000010>; <0x00000001 0x00010000 0xff210000 0x00000080>; Здесь жирным цветом, то что я добавил правильно ли? И в описании клоков clocks Цитатаhps_0_f2s_sdram_ref_clk: hps_0_f2s_sdram_ref_clk { compatible = "fixed-clock"; #clock-cells = <0>; clock-frequency = <0>; /* 0.00 Hz */ clock-output-names = "hps_0_f2s_sdram_ref_clk-clk"; }; //end hps_0_f2s_sdram_ref_clk (hps_0_f2s_sdram_ref_clk) этот клок не задан, не совсем понял, что это за клок и нужен ли он мне?
  4. Цитата(sonycman @ Oct 23 2017, 15:56) Мне удобнее всего ручками править .dts файл, добавляя в него нужную периферию. Несложный и хорошо читаемый синтаксис, к примеру: Код            i2c_fpga: i2c_fpga@0x100000000 {                 compatible = "mycore,i2c-master-0.1";                 reg = <0x00000001 0x00000000 0x00000010>;                 interrupt-parent = <&hps_0_arm_gic_0>;                 interrupts = <0 40 4>;                 clocks = <&clk_0>;                 speed-mode = <100000>;             }; в отличие от нечитаемых .xml При таком подходе проблем с sysid_qsys id и timestamp не возникает? они же будут не соответствовать заново генерированной системе из qsys ? Кодsysid_qsys: sysid@0x100001000 {                 compatible = "altr,sysid-16.1", "altr,sysid-1.0";                 reg = <0x00000001 0x00001000 0x00000008>;                 clocks = <&clk_0>;                 id = <2899645186>;                     timestamp = <1492500749>;                 }; //end sysid@0x100001000 (sysid_qsys)
  5. Вручную подправил dts-файл, но линукс так и не стал грузиться - Bad Linux ARM zImage magic! С коллегой выяснили почему бьется zImage, все просто - после записи zImage в DDR память, эту же область памяти использует Frame Buffer и перезаписывает ее картинкой)
  6. Т.е. из GHRD мы должны взять .dts или .xml и дописать туда свое. У меня же получается, что исходный GHRD проект от Terasic под ядро линукса 3.12 А дальнейшая инструкция с https://rocketboards.org/foswiki/Documentation/AVCVGSRD171 под более свежее ядро например. То правильно ли я понимаю, что даже если я сделаю свои .dtb их нельзя будет использовать под более свежие версии линукса?
  7. hps_common_board_info.xml и soc_system_board_info.xml. И как вы с ними в итоге решили вопрос?
  8. У меня проблема в Device Tree мне нужно сделать свои под DE1-SoC soc_system_board_info.xml и hps_common_board_info.xml я сразу на них не обратил внимание думал, что их генерит qsys. Сейчас попробую разобраться, что там и к чему...
  9. В epcs только прошивка для плис. Спасибо за наводящие вопросы! но я начинаю думать на socfpga.dtb...
  10. Цитата(sonycman @ Oct 19 2017, 19:14) Тогда надо разбираться, почему отсутствует нужная сигнатура в памяти по адресу загрузки образа ядра. Интересно, а почему когда MSEL стояли на загрузку из EPCS, то ядро линукса начинало грузиться?
  11. 1) preloader-mkpimage.bin (Preloader image) свой генерил на основе своего проекта https://rocketboards.org/foswiki/Documentation/GSRDPreloader 2) socfpga.dtb (Device Tree Blob) свой генерил на основе своего проекта https://rocketboards.org/foswiki/Documentat...ceTreeGenerator 3) u-boot.scr (U-boot script for configuring the FPGA) стандартный по этой инструкции https://rocketboards.org/foswiki/Documentat...ProgrammingFPGA 4) u-boot-cyclone5.img (U-boot image) готовый брал от сюда linux-socfpga-gsrd-16.1-cv-bin.tar.gz https://releases.rocketboards.org/release/2016.10/gsrd/bin/ 5) zImage (Compressed Linux kernel image) готовый из linux-socfpga-gsrd-16.1-cv-bin.tar.gz 6) altera-gsrd-image-cyclone5.tar.gz (Root filesystem as compressed tarball) готовый из linux-socfpga-gsrd-16.1-cv-bin.tar.gz Собирал все это дело, как в описании скриптом make_sdimage.py https://rocketboards.org/foswiki/Documentation/GSRDSdCard
  12. "если пины Bootsel выставлены на загрузку с SD карты, то считывание флешки epcs не должно происходить" И в правду я забыл о MSEL! Теперь прошивка FPGA грузиться, вижу свои полоски на VGA мониторе, но теперь Linux не начинает грузиться.. Hit any key to stop autoboot: 0 reading u-boot.scr 200 bytes read in 3 ms (64.5 KiB/s) ## Executing script at 02000000 reading soc_system.rbf 7007204 bytes read in 331 ms (20.2 MiB/s) ## Starting application at 0x3FF79584 ... ## Application terminated, rc = 0x0 reading zImage 4051904 bytes read in 192 ms (20.1 MiB/s) reading socfpga.dtb 18955 bytes read in 6 ms (3 MiB/s) Bad Linux ARM zImage magic! reading zImage 4051904 bytes read in 192 ms (20.1 MiB/s) reading socfpga.dtb 18955 bytes read in 6 ms (3 MiB/s) Bad Linux ARM zImage magic! SOCFPGA_CYCLONE5 #
  13. Цитата(sonycman @ Oct 18 2017, 21:45) Что значит "в fpga прошивка по умолчанию"? Сгенерируйте свою прошивку и положите её на карту памяти под именем soc_system.rbf, затерев таким образом оригинальную. Скрипт uboot изменять не нужно. "её на карту памяти под именем soc_system.rbf" - я так и делаю. по умолчанию это которая pof из EPCS. Цитата(sonycman @ Oct 18 2017, 21:45) Скрипт uboot изменять не нужно. В этой статье говорят, что включение fpga2sdram необходимо выполнять в U-boot и добавляют следующие строки https://habrahabr.ru/company/metrotek/blog/263571/ ... fpgadata=0x10000000 fpgafile=/lib/firmware/fpga/fpga.rbf fpgaboot=setenv fpga2sdram_handoff 0x3fff; ext2load mmc 0:2 ${fpgadata} ${fpgafile}; fpga load 0 ${fpgadata} ${filesize} bridge_enable_handoff=mw $fpgaintf ${fpgaintf_handoff}; go $fpga2sdram_apply; mw $fpga2sdram ${fpga2sdram_handoff}; mw $axibridge ${axibridge_handoff}; mw $l3remap ${l3remap_handoff} bootcmd=run fpgaboot; run bridge_enable_handoff; run mmcboot ...
  14. Всем привет! 1) Сделал пример в qsys: генератор картинки- > фрейм буфер на памяти DDR3 ARMa -> VGA генератор (за основу взял пример от terasic, и с их образом SD-карты мой пример работает - вижу цветные полосы на мониторе) 2) Делаю свою SD-карту по описанию https://rocketboards.org/foswiki/Documentation/AVCVGSRD161 3) Прошиваю образ на флешку и при запуске вижу следующее: - В fpga прошивка по умолчанию (судя по терминалу плис прошивается, но потом такое ощущение, что ресет проскакивает и плис снова с прошивкой по умолчанию) Hit any key to stop autoboot: 0 reading u-boot.scr 200 bytes read in 4 ms (48.8 KiB/s) ## Executing script at 02000000 reading soc_system.rbf 7007204 bytes read in 331 ms (20.2 MiB/s) ## Starting application at 0x3FF79584 ... **** - После загрузка останавливается Starting kernel ... [ 0.000000] Booting Linux on physical CPU 0x0 **** [ 1.041385] of_cfs_init: OK [ 1.047017] ttyS0 - failed to request DMA [ 1.051082] Waiting for root device /dev/mmcblk0p2... [attachment=109337:terminal.txt] Я так понимаю, что запуск fpga2sdram не прошел. У меня есть подозрение, что я не могу использовать настройку u-boot.scr по умолчанию https://rocketboards.org/foswiki/Documentat...ProgrammingFPGA fatload mmc 0:1 $fpgadata soc_system.rbf; fpga load 0 $fpgadata $filesize; run bridge_enable_handoff; run mmcload; run mmcboot; Хочу узнать ваше мнение, это в u-boot.scr нужно дополнительно конфигурировать fpga2sdram ? И еще вопрос, почему прошивка плис не проходит?