问题标签 [petalinux]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
embedded-linux - 将 arm64 特定的内核头添加到 Linux 以刷新缓存
我正在尝试编译一个 linux 模块,该模块应该在 arm-64 位架构(Cortex-A53)上运行。部分功能是在某个时候刷新缓存,这以前在 arm-32 位架构上工作。如何构建包含相关标头(如 cache.h 和 cacheflush.h)的内核标头?
我正在使用 Xilinx 工具链(Vivado 和 SDK、PetaLinux 工具)来生成所有必需的嵌入式 Linux 组件,如引导加载程序、内核映像和设备树。此外,我克隆了 Xilinx-Linux-Repository,切换到当前分支并配置 PetaLinux 工具以使用特定的 Xilinx-Linux-Repo 来生成使用该存储库的组件。我的平台是 Avnet-UltraZed-EG-IOCC Board,我正在使用 Debian-10 根文件系统进行开发。我正在尝试编译的模块已在其他 Zynq-7000 开发中工作。使用 outercache.h 刷新缓存的板。
1) 使用 PetaLinux 构建引导文件、内核映像和设备树
2) 克隆 Xilinx-Linux-Repo 并构建头文件
3) 使用 Debian 启动系统
我不确定哪些标头可以工作,但我希望在将标头构建到 /usr/include/asm/*.h 之后找到 cache.h 和 cacheflush.h
c - 套接字发送有时只能在无限循环中工作(C)
我正在为 Zynq FPGA 的 DAQ 系统建立一个原型。我通过以太网从服务器接收数据,使用 DMA 将其写入 FIFO,反之亦然,使用两个不同的 pthread。但是,发送操作挂起,经过一些迭代后,它正确执行然后再次挂起,同时recv
操作成功并填充FIFO。
有时,只有在存在或不存在某些 printf 时,线程才能按预期工作,所以我暂时打印到 stderr。
对不起,可耻的代码,但我现在尝试替换几乎每一行来发现问题。
实际输出显示来自recv
线程的打印,而发送线程打印
[*] 发送头: %d 尾: %d\n
几乎总是,有时它必须做什么。
python - 如何从 python 中“获取 /auto/xlnx/current_petatools/settings.sh”?
我正在尝试自动化采购 petalinux 工具的过程,以便从 python运行诸如“ petalinux-build ”之类的 bash 命令。
但是,我的方法没有成功。我阅读了一些文章,指出无法通过子进程或操作系统调用从 python中使用“源”。
我曾尝试使用诸如Popen 、call和check_output之类的子进程系列函数,但它们似乎都不起作用。
我希望采购 petalinux 工具可以工作,这样我就可以在环境中运行它的命令系列。
gcc - 在 64 位 ubuntu 上交叉编译 arm32bit 时 glib-2.0 的问题
当我尝试交叉编译我的 GStreamer 管道以在 Petalinux 构建上运行它时,它会加载 64 位库,而主机是 32 位臂。
我收到以下错误:
我已经尝试安装 ":i386" 软件包并将 PKG_CONFIG_PATH 导出到 /usr/lib/i386-linux-gnu/pkgconfig/ 但之后我得到:
gstreamer - Gstreamer 到 html 与busybox
我正在尝试在基于 zynqmp 的平台内使用 gstreamer 将视频流式传输到 petalinux 中的 html usign busybox。
所以主要思想是将视频管道流式传输到嵌入式网络服务器并从外部 PC 网络浏览器(我使用的是 chrome)打开它。
index.html 文件如下所示:
测试管道是:
我还尝试从 C 应用程序实时流式传输摄像机,如下所示:
(请注意,上面这行是一个伪代码来说明应用程序在做什么)
我期待在 PC 网络浏览器中看到视频,但不幸的是,我有一个带有视频控件的灰色框。
有谁知道这是否可以使用busybox?或者这种方法有什么根本错误吗?
eclipse - 关于 Poky 中 tcf-agent_git.bb 中的错误 URI
我是新手,并尝试通过 pocto 构建 xilinx。作为指南,我克隆了存储库(branch thud)、source oe-... 和 change MACHINE="zedborad-zynq7"
, then bitbake petalinux-image-minimal
,但出现以下错误:
错误:tcf-agent-1.7.0+gitAUTOINC+dad3a6f568-r0 do_fetch: Fetcher failure: Fetch command ... https://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git refs/ :refs/失败,退出代码 128,输出:致命:存储库“ https://git.eclipse.org/gitroot/tcf/org.eclipse.tcf.agent.git/ ”未找到...错误:任务(〜 /poky/meta/recipes-devtools/tcf-agent/tcf-agent_git.bb:do_fetch) 失败,退出代码为“1”
问题是 tcf-agent_git.bb 中的语句:
不是地址不对,其实我可以用这个地址克隆成功。另一方面,我对此变量的任何修改也将不起作用。我已经grep -rn "eclipse.org"
,但只找到这个文件。
欢迎任何建议。
非常感谢。
———————————————————————————</p>
我最终无法解决这个问题。我发现构建器根本没有从 SRC_URL 提供的地址中获取,而是从某处给定的镜像中获取。
作为测试,我编辑了 .bb 文件,添加了 PREMIRRORS="" 和 MIRROS="",并为 SRC_URI 添加了 protocal=git 语句。语句确实有效,构建器从SRC_URL地址中获取,但协议仍然是HTTPS,功能仍然失败。我的解决方法是手动克隆源码,放到对应的目录下,为了让builder知道,我也摸了个package_name.done和chmod 777在同一个目录下,就可以继续了。
linux-kernel - Silabs Si5340:如何为其中一个芯片输出定义时钟
我们开发使用 Si5340 为各种芯片(ADC、DAC)提供时钟的硬件。
硬件基于 Xilinx Zynq Ultrascale,选择的操作系统是 Petalinux 2018.3。
我们使用的驱动程序是 clk-5341 ( https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/clock/silabs,si5341.txt )。
时钟芯片的文档提供了两个如何使用输出的片段。
使用了 si5340 的两个输出:
- 1 GHz 用于 ADC 芯片
- 250 MHz 用于 DAC 芯片
我想创建两个时钟节点来描述时钟输出,然后在 ADC 和 DAC 芯片节点中引用它们。
这不能按预期工作。我对设备树很陌生。不幸的是,我没有找到一个有用的例子。
您能否建议如何正确地将 si5340 的输出描述为时钟源?
gstreamer - 在 petalinux 中编译 gstreamer 应用程序时出错
我正在尝试使用以下头文件在 petalinux 中编译自定义 gstreamer 应用程序:
petalinux 项目在运行后已经填充了 sysroot 库源:
但是编译应用程序(petalinux-build -c myapp)我得到了下一个错误:
制作文件是:
和食谱:
有谁知道我缺少什么以及如何正确添加 gstreamer 路径以进行编译?
编辑
正如建议的那样,我在配方中添加了 DEPENDS 行:
但不幸的是仍然给出同样的错误......任何想法可能是错误/遗漏?
提前致谢。
embedded-linux - 嵌入式 Linux 的启动卡住了。如何调试?
在由 petalinux 构建的嵌入式平台中,在引导期间(从 u-boot),我看到的最后一个打印是(有时)mmcblk0boot1 打印。调试/跟踪/修复问题的好方法是什么?
如您所见,日志末尾是另一个启动的开始附加日志
==================================================== ======================
启动内核:
python - TypeError:参数应该是字符串、字节或整数,而不是 PosixPath
我的代码在我的 Raspberry Pi 4 系统 (Raspbian) 上运行良好,但在 Petalinux 系统中抛出了这个奇怪的错误,即使我使用的是字符串。路径存在,我以 root 身份登录。
代码
错误
PS:我已经尝试过 '//root//web_gui//Recordings' 但得到了同样的错误