chirik8807 0 15 ноября, 2017 Опубликовано 15 ноября, 2017 (изменено) · Жалоба Всем привет! Взял за основу пример для платы DE10_Standard -> DE10_Standard_GHRD (quartus, qsys, soc_system.dts) 1) Добавил блок Frame Buffer II (и соответственно тестовую таблицу и вывод видео) 2) Добавил в hps еще один интерфейс f2h_sdram1 soc_system.rar Внес изменения в soc_system.dts но в нем есть места в которых я не уверен. мой DE10_GHRD_vip_soc_system.dts: DE10_GHRD_vip_soc_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) этот клок не задан, не совсем понял, что это за клок и нужен ли он мне? Изменено 15 ноября, 2017 пользователем chirik Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
grebenkoff 0 16 ноября, 2017 Опубликовано 16 ноября, 2017 · Жалоба Доброго времени суток. Оговорюсь сразу, что ответа на ваши вопросы я не знаю. Но темой интересуюсь, т.к. потихоньку, разбираюсь с платой DE10-Nano. Если я правильно понимаю, то Device Tree Blob (DTB), в который в последствии должен конвертироваться .dts файл, читается при загрузке Linux различными модулями ядра (драйверами), причем, разные секции разными модулями, глядя по тому, какая информация об аппаратуре их интересует. Например про alt_vip_vfr_0 интересно знать графическим модулям, а про мост hps_0_bridges: bridge@0xc0000000, который вы добавляете, кто и что должен знать в системе? Кто будет его использовать? Мне кажется, от этого зависит что там должно быть. Прошу поправить, если я что-то не так понимаю. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
sonycman 0 17 ноября, 2017 Опубликовано 17 ноября, 2017 · Жалоба 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>; Бросается в глаза точка с запятой в конце предпоследней строки. Наверное, надо исправить на запятую. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
chirik8807 0 17 ноября, 2017 Опубликовано 17 ноября, 2017 · Жалоба Это я подправил, иначе он не компилировал .dtb ) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться