0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Multi-Scaler IP的Linux示例以及Debug(下)

XILINX開發(fā)者社區(qū) ? 來源:XILINX開發(fā)者社區(qū) ? 2024-09-18 10:05 ? 次閱讀

Petalinux 工程:

設置好 2022.2 Petalinux 環(huán)境。使用 2022.2 ZCU06 BSP,創(chuàng)建 Petalinux 工程:

petalinux-create $BSP_DIR/xilinx-zcu106-v2022.2-final.bsp

這個例子的 BSP_DIR= /proj/petalinux/released/Petalinux v2022.2/finalrelease/release/petalinux-v2022.2_10141622/bsp/release

CD 到新建的 Petalinux 工程下:

cd xilinx-zcu106-2022.2/

在上面 AMD Vivado? Design Suite 生成的 .xsa 文件導入到 Petalinux 工程:

petalinux-config --get-hw-description=/v_multi_scaler_0_ex/

XSA 文件在

/v_multi_scaler_0_ex/.

System Configuration:

在 System Configuration 配置頁面,選擇 DTG settings。

wKgZombqNYuASpxIAAFNyjoMqHk394.jpg

在 DTG settings頁面,按”n”把“Remove PL from device tree”勾掉,確保這個選項不要選上。

wKgaombqNYuAO0kfAACSYzHOvN0189.jpg

在 DTG Settings→kernel Bootargs→Add extra boot args,可以加上 cma=1700M。

在 System Configuration 配置頁面,選擇 FPGA Manager,按“n”把 FPGA Manager 選項勾掉。

wKgZombqNYuAG0S8AAEfKh4PO9c770.jpg

wKgaombqNYuAO8Y5AABExFOdjDI662.jpg

Kernel Configuration:

運行下面命令:

Petalinux-config -c kernel

在Kernel配置頁面, 確保CONFIG_VIDEO_XILINX, CONFIG_VIDEO_DEV, CONFIG_VIDEO_V4L2, CONFIG_VIDEO_XILINX_MULTISCALER 這些選項都已經配置好。

wKgZombqNYuAQV9fAAIYrwaoe1A346.jpg

可以在 Kernel 配置頁面,用‘/’來搜索這些配置是否已經設置。

wKgaombqNYuAfl7cAACTeqc6SRY672.jpg

wKgaombqNYuACIHuAAJqtu-pXM8646.jpg

Rootfs 配置:

運行下面命令,配置 Rootfs:

petalinux-config -c rootfs

在 Filesystem Packages→misc→v4l-utils,配置好 v4l-utils, libv4l, media-ctl。

在Filesystem Packages→misc→gstreamer1.0-plugins-good,按”y”把下面選項都勾上。

wKgaombqNYuAW0aZAACIAn6qIMs215.jpg

編譯 Petalinux工程:

petalinux-build

創(chuàng)建 Boot Image:

cd images/linux

petalinux-package --boot --fsbl zynqmp_fsbl.elf --u-boot u-boot.elf --pmufw pmufw.elf --fpga system.bit

拷貝 Image 到 SD card:

把生成的BOOT.BIN, system.dtb, Image, rootfs.cpio.gz.u-boot, boot.scr 拷貝搭配 SD card。

ZCU106 板卡設置與連接:

Connect the Micro USB cable into the ZCU106 Board Micro USB port J83, and the other end into an open USB port on the host PC. This cable is used for UART over USB communication.

Insert the SD card with the images copied into the SD card slot J100.

Set the SW6 switches as shown in the below Figure. This configures the boot settings to boot from SD.

wKgaombqNYuAYtRdAACZ3YiplGI394.jpg

Connect 12V Power to the ZCU106 6-Pin Molex connector.

Set up a terminal session between a PC COM port and the serial port on the evaluation board.

Run the image on ZCU106:

在 Linux Booting 完成后,運行下面的 gst-launch 命令:

gst-launch-1.0 videotestsrc num-buffers=50 ! video/x-raw, width=3840, height=2160, format=RGB ! queue min-threshold-buffers=2 max-size-bytes=0 ! v4l2convert capture-io-mode=4 output-io-mode=4 ! video/x-raw, width=1920, height=1080, format=RGB ! filesink location=./out_chan0.rgb

把 SD card mount 到 /mnt/。

mount /dev/mmcblk0p1 /mnt/

把剛才生成的 out_chan0.rgb 拷貝到 /mnt。

cp out_chan0.rgb /mnt/

在 YUV player 打開 out_chan0.rgb

設置 YUV player 的 size 為 1080p,color 為 RGB24, zoom 設置為1:2或者1:4。打開out_chan0.rgb,就能看到下面圖片:

wKgZombqNYuARv6sAAH6bET9RuU842.jpg

Multi-scaler 在 linux 的 debug:

比較常見的問題,是在運行上面的 gst-launch 命令,找不到“v4l2convert” element。遇到這個錯誤,需要看 multi-scaler 在 boot log 有沒有 probe。一個經??吹降脑蚴?multi-scaler 的 device tree 里 reset-gpios 這個 property 是必須的,但 DTG 有的時候沒有產生這個 property,或者是 gpio 沒有連接到 multi-scaler 的 reset 管腳,所以確保 reset-gpios 這個 property 在 device tree, 否則就會看到錯誤。下面是 video multi-scaler device tree 的參考例子,如果不確定 device tree 是否正確,對比下面的例子,檢查 device tree 是否有缺少的 property。

wKgZombqNYuALMOTAAF5Ys1GzZw148.jpg

Multi-scaler 的第一個node, 它的 gstreamer element 是 "v4l2convert" 而不是 "v4l2video0convert",之前第一個node是v4l2video0convert,第二個node是v4l2video1convert,現(xiàn)在 1st node 是 "v4l2convert",2nd 是“v4l2video1convert ”。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • amd
    amd
    +關注

    關注

    25

    文章

    5369

    瀏覽量

    133373
  • Linux
    +關注

    關注

    87

    文章

    11123

    瀏覽量

    207888
  • Xilinx
    +關注

    關注

    70

    文章

    2136

    瀏覽量

    120373
  • 文件
    +關注

    關注

    1

    文章

    551

    瀏覽量

    24559

原文標題:開發(fā)者分享|Multi-Scaler IP 的 Linux 示例以及 Debug (下)

文章出處:【微信號:gh_2d1c7e2d540e,微信公眾號:XILINX開發(fā)者社區(qū)】歡迎添加關注!文章轉載請注明出處。

收藏 人收藏

    評論

    相關推薦

    Video Scaler IP Core幾小時后停止運行

    嗨,大家好,現(xiàn)在我在S6-100設備上的ISE 14.7中遇到了Video Scaler 7.01a的問題??s放器工作在縮放模式,例如將1080i50轉換為625i。縮放結果是正確的。但IP核心在
    發(fā)表于 04-02 08:58

    ARM的Debug工具Multi-ICE有何特點呢

    Multi-ICE 是arm的Debug工具他有什么特點?需要芯片給他什么支持呢
    發(fā)表于 06-16 14:11

    Gowin Scaler Lite Down&Up IP用戶使用指南

    Gowin Scaler Lite Down & Up IP 用戶指南主要內容包括產品概述、功能描述、配置調用、參考設計等,旨在幫助用戶快速了解 Gowin Scaler LiteDown & Up
    發(fā)表于 09-30 07:20

    Gowin Scaler IP快速用戶指南

    Gowin Scaler IP 用戶指南主要內容包括功能簡介、端口說明、時序說明、配置調用、參考設計等,旨在幫助用戶快速了解 Gowin Scaler IP 的特性及使用方法。
    發(fā)表于 10-10 10:07

    Linux基于socket多線程并發(fā)通信的實現(xiàn)

             在Linux 開發(fā)網絡通信系統(tǒng)可以充分發(fā)揮Linux 系統(tǒng)出色的網絡性能,本文介紹了在Lin
    發(fā)表于 09-08 09:27 ?81次下載

    Linux的UDP協(xié)議編程

    Linux的UDP協(xié)議編程 介紹UDP協(xié)議,并提供一個適用于客戶端和服務器端的實例子程序。  關鍵詞:Linux;UDP協(xié)議;TCP/IP協(xié)議;程序設計
    發(fā)表于 10-16 22:22 ?3930次閱讀
    <b class='flag-5'>Linux</b><b class='flag-5'>下</b>的UDP協(xié)議編程

    linuxTCP-IP通信

    linuxTCP-IP通信,網絡通信的技術資料,很好很實用。
    發(fā)表于 03-28 13:46 ?40次下載

    Linux主機IP配置

    Linux如何進行靜態(tài)IP的設置,在主機運行IP配置的指令
    發(fā)表于 06-03 14:30 ?0次下載

    基于Vivado HLS的Down Scaler視頻系統(tǒng)設計

    介紹一種基于FPGA的 Down Scaler視頻系統(tǒng)設計。
    發(fā)表于 04-11 16:41 ?1970次閱讀
    基于Vivado HLS的Down <b class='flag-5'>Scaler</b>視頻系統(tǒng)設計

    Gowin Scaler Lite Down/Up IP用戶指南

    Gowin Scaler Lite Down & Up IP 用戶指南主要內容包括產品概述、功 能描述、配置調用、參考設計等,旨在幫助用戶快速了解 Gowin Scaler Lite Down & Up
    發(fā)表于 09-15 11:01 ?0次下載
    Gowin <b class='flag-5'>Scaler</b> Lite Down/Up <b class='flag-5'>IP</b>用戶指南

    Gowin Scaler IP用戶指南

    電子發(fā)燒友網站提供《Gowin Scaler IP用戶指南.pdf》資料免費下載
    發(fā)表于 09-15 09:25 ?3次下載
    Gowin <b class='flag-5'>Scaler</b> <b class='flag-5'>IP</b>用戶指南

    如何使用Linux ip命令

    ip命令是每個Linux系統(tǒng)管理員熟知的網絡接口配置的超級工具。它可用于接口關閉與開啟,分配和刪除ip地址以及ARP路由緩存管理等等。
    的頭像 發(fā)表于 12-12 17:26 ?1479次閱讀

    Multi-scaler的裸機測試流程

    Multi-Scaler是一個用于圖像縮放的視頻處理IP核,支持最多8路輸出,使用Memory接口,從源緩沖區(qū)讀取圖像,在H和V域進行縮放后寫入到目的緩沖區(qū),源端的緩地址和目的端緩存地址可以動態(tài)的更改,輸出完成之后會產生一個中斷信號。
    的頭像 發(fā)表于 05-19 14:08 ?1067次閱讀
    <b class='flag-5'>Multi-scaler</b>的裸機測試流程

    記錄一次解決RT-Thread創(chuàng)建基于ART-PI的示例項目可以下載但卻無法debug的問題

    先隨便創(chuàng)建一個基于模板工程的項目,發(fā)現(xiàn)可以debug,但基于示例工程創(chuàng)建的項目卻發(fā)現(xiàn)不能debug。
    的頭像 發(fā)表于 10-12 10:24 ?397次閱讀
    記錄一次解決RT-Thread創(chuàng)建基于ART-PI的<b class='flag-5'>示例</b>項目可以下載但卻無法<b class='flag-5'>debug</b>的問題

    Multi-Scaler IPLinux示例以及Debug(上)

    本篇文章介紹了在 ZCU106 上創(chuàng)建 Video Multi-Scaler IP 的 AMD Vivado? Design Tool 和 Petalinux 工程;在 ZCU106 上 Run 生成的 Image,并測試生成的圖像文件,
    的頭像 發(fā)表于 09-18 10:03 ?96次閱讀
    <b class='flag-5'>Multi-Scaler</b> <b class='flag-5'>IP</b>的<b class='flag-5'>Linux</b><b class='flag-5'>示例</b><b class='flag-5'>以及</b><b class='flag-5'>Debug</b>(上)