问题标签 [imx7]
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.
yocto - bitbake 因扩展错误而失败
语境:
我正在按照NXP i.MX7 Reference为 i.MX 7 SABRE 板构建 Linux 映像。这个过程很顺利,我成功地在板上构建并加载了 krogoth 图像。当我尝试将openembedded-core层添加到我的图像时出现问题。我立即收到以下错误。我包括了我的bblayers.conf以供参考。任何帮助,将不胜感激。我什至不需要sqlite,所以如果有办法绕过它,那就没问题了。
错误:
bblayers.conf
成功构建和失败构建之间的唯一区别是以下行:${BSPDIR}/sources/openembedded-core/meta
.
opengl-es - ANDROID THINGS IMX7 CAMERA:A/OpenGLRenderer:无法选择配置,错误 = EGL_SUCCESS
我是 Android Things 领域的新手,我为 pico IMX7 刷新了 Android Things OS 映像并成功启动,一切都很好……直到我运行了一个 Github ( https://github.com/dozingcat/CamTimer ) 程序来验证相机。
1)当我运行程序时,我能够拍摄第一张照片,但是当我尝试拍摄第二张照片时,出现以下错误 ==>
然后应用程序因此错误而崩溃==>
这是相机错误跟踪(1): == ----- pid 187 at 2009-01-01 05:36:48 ----- Cmd line: /system/bin/cameraserver
这是 MainActivity 类代码,我做的改动很小。
gstreamer - imx7 军刀板中 gstreamer-1.0 appsrc 的内存泄漏
当我在 x86 机器和 imx7 saber 板中运行 gstreamer-1.0 appsrc 示例代码的示例应用程序时,我能够可视化 saber 板中的内存泄漏,但无法可视化 x86 机器中的内存泄漏。附上代码供您参考。这是一个已知的问题 ?任何可用于内存泄漏的解决方法/补丁?
https://www.dropbox.com/s/lctmjod1ycwzm85/appsrc_example.zip?dl=0
debian - Yocto:cl-som-imx7 的元 debian 错误
我可以为 cl-som-imx7 构建一个 yocto 映像,但是当我添加 meta-debian 层时,我得到一个带有一些错误的巨大 python 跟踪。我遵循了 yocto 的以下 cl-som-imx7 指南,并且基本图像工作正常。 这是错误
这是我的 bblayer.conf 文件:
c - ARM 中的 ptrace 用法
我正在尝试分析第三方软件如何控制某些硬件。该板基于 i.mx7,运行 i.MX Linux 内核 3.14.52。
该板是一个开发板,正在运行一些我没有代码的演示软件。大多数配置是通过ioctl
调用完成的,我试图用它strace
来了解更多关于正在设置/获取的信息。
作为一个例子,我得到以下信息strace
:
ioctl(4, FBIOPUT_VSCREENINFO, 0x19fcebc)
我想以某种方式取消引用第三个参数中的指针以查看数据。我知道数据的结构,从我读过的内容来看,如果strace
还不知道你的结构,那么你就没有运气。
我也读过关于编写我自己的代码ptrace
来做类似的事情,但每个例子都不是针对 ARM 的。我看到的代码使用ORIG_EAX
andEAX
寄存器和 ARM 我相信使用orig_r
and r7
,但我不知道如何访问“寄存器”。我对 Linux 编程很陌生。
令人惊讶的是,我什至无法在详尽的谷歌搜索中轻松找到任何东西。有些线程暗示了它,但我找不到细节。我不能是唯一需要ptrace
在 ARM 上使用的人吗?诚然,我可能是唯一一个你不知道如何使用它的人!
如果无法ptrace
正常工作,我会很高兴看到strace
指示结构所在的内存,我可以手动重建它们。我该怎么办?
感谢您的任何提示或指示,我真的碰到了一堵砖墙。
usb - 如何在 i.MX7 上构建 Yocto hddimg 以从 U 盘启动
我有一个 i.mx7 索姆。我想构建一个 Yocto 映像,我可以将其 dd 到 USB 记忆棒上以从中启动。我相信我想要一个 hddimg 图像,但看不到如何创建一个(我有 sdimg 可以完美地工作)。
我会很感激建议。
我已将 IMAGE_FSTYPES 设置为“hddimg”,但得到“错误:Nothing PROVIDES 'syslinux'”
SOM 是 Technexion i.MX7。层是:
yocto - 带有 OP-TEE 示例的 IMX7D Sabre Yocto 项目
我第一次尝试使用 Yocto 使用 OP-TEE 为 imx7d saber 创建 SD 卡 Linux 映像。我按照此文档https://www.nxp.com/docs/en/user-guide/i.MX_Yocto_Project_User's_Guide_Linux.pdf构建图像。我能够使用 OP-TEE 构建映像并成功运行 OP-TEE Xtest。但是现在我不知道如何在图像中运行 OP-TEE 示例。这些二进制文件不在 bin 文件夹中
问题
- 如何将 OP-TEE 示例包含到 Yocto
将来如何将我自己的受信任应用程序添加到 Yocto。
谢谢
c - NEON 在 IMX7 上具有与 C 相同的性能
嗨,我正在 Nxp imx7 上开发和图像处理应用程序,我想比较 NEON 指令与纯 C 的性能。
c: a,b,c 是 float32。运行 11ms
NEON:运行 10 毫秒
为什么 NEON 只比 c 快 1ms?我在这里想念什么吗?
linux - 如何在 iMX8QXP 上运行 OV5647_mipi
嗨,我有 iMX8QXP 套件,我想从 ov5647 相机获取流。
发行= fsl-imx-wayland。
我的 ov5647 相机的引脚连接到:
MIPI_CSI0_ACM_MCLK_OUT MIPI_CSI0_MCLK_OUT ALT0
MIPI_CSI0_CKN MIPI_CSI0_CLK_N ALT0 MIPI_CSI0_CKP MIPI_CSI0_CLK_P ALT0 MIPI_CSI0_DN0 MIPI_CSI0_DATA0_N ALT0 MIPI_CSI0_DN1 MIPI_CSI0_DATA1_N ALT0 MIPI_CSI0_DN2 MIPI_CSI0_DATA2_N ALT0
MIPI_CSI0_DN3 MIPI_CSI0_DATA3_N ALT0 MIPI_CSI0_DP0 MIPI_CSI0_DATA0_P ALT0 MIPI_CSI0_DP1 MIPI_CSI0_DATA1_P ALT0 MIPI_CSI0_DP2 MIPI_CSI0_DATA2_P ALT0 MIPI_CSI0_DP3 MIPI_CSI0_DATA3_P ALT0
但 I2C 引脚未连接。有问题吗?我可以通过 i2c 从没有初始化的相机获取数据吗?
所以我在 ./include/dt-bindings/pinctrl/pads-imx8qxp.h 中找不到这些管脚(带有焊盘信号名称),如果我写这些管脚焊盘格式,我会得到错误,而不是写 MIPI_CSI0_ACM_MCLK_OUT。我认为这个引脚是专用的,我不能复用。我可以直接使用而无需更改 scfw。
所以我关于 mipi csi 相机的 dts 文件:
然后我通过 make menuconfig 打开 ov5647_mipi 支持:
make menuconfig > Device Drivers > Multimedia Support > V4L platform devices > MXC Camera/V4L2 RPR Features Support > Omnivision ov5647 camera support using mipi > (*). 我在此处添加 y。
比我启动时,/dev 中没有新视频。(有无ov5647驱动不改变视频大小。有video12和video13)
我将使用 mipi 的 Omnivision ov5647 相机支持更改为 m(构建模块),然后我 insmod ov5647_camera_mipi.ko
模块加载和 strace 像这样:
我尝试使用以下命令通过 lvds 使用 video12 和 video13 打开相机:
命令 :
gst-launch-1.0 -v videotestsrc模式=球\!视频/x-raw,宽度=320,高度=240 \ !视频转换\!球座 \ !v4l2sink 设备=/dev/video12 输出:
root@imx8qxpmek:/home# gst-launch-1.0 -v videotestsrc pattern=ball \
!视频/x-raw,宽度=320,高度=240 \ !视频转换\!球座 \ !v4l2sink device=/dev/video12 将管道设置为 PAUSED ... 错误:管道不想暂停。错误:来自元素 /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0:设备“/dev/video12”不是输出设备。附加调试信息:../../../git/sys/v4l2/v4l2_calls.c(687): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0: Capabilities: 0x4204000 Setting pipeline to NULL ... Freeing管道...
根@imx8qxpmek:/home#
命令 :
gst-launch-1.0 -v videotestsrc模式=球\!视频/x-raw,宽度=320,高度=240 \ !视频转换\!球座 \ !v4l2sink 设备=/dev/video12 输出:
将管道设置为 PAUSED ... Pipeline is PREROLLING ... /GstPipeline:pipeline0/GstVideoTestSrc:videotestsrc0.GstPad:src: caps = video/x-raw, format=(string)NV12, width=(int)320, height= (int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, interlace1 /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, format=(string) NV12,宽度=(整数)320,高度=(整数)240,帧率=(分数)30/1,多视图模式=(字符串)单声道,隔行扫描模式1 /GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad:src: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, interlace1 /GstPipeline :pipeline0/GstTee:tee0.GstTeePad:src_0: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview -mode=(字符串)单声道,隔行模式=(string1 /GstPipeline:pipeline0/GstV4l2Sink:v4l2sink0.GstPad:sink: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate= (fraction)30/1, multiview-mode=(string)mono, interlace-mode=(1 /GstPipeline:pipeline0/GstTee:tee0.GstPad:sink: caps = video/x-raw, format=(string)NV12,宽度=(整数)320,高度=(整数)240,帧率=(分数)30/1,多视图模式=(字符串)单声道,隔行模式=(字符串)pro1 /GstPipeline:pipeline0/GstVideoConvert:videoconvert0.GstPad :sink: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(fraction)30/1, multiview-mode=(string)mono, interlac1 /GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw, format=(string)NV12, width=(int)320, height=(int)240, framerate=(fraction)30/ 1、多视图模式=(字符串)单声道,interlace-mo1 Pipeline is PREROLLED ... 将流水线设置为 PLAYING ... 新时钟:GstSystemClock
^处理中断。-------------------------------------> CTRL + C 中断:停止流水线...执行结束在 0:01:03.000609625 之后将管道设置为 PAUSED ... 将管道设置为 READY ... 将管道设置为 NULL ... 释放管道 ...
命令 :
gst-launch-1.0 -e glvideomixer 名称=混合背景=3 sink_0::xpos=192 sink_0::ypos=0 sink_0::width=640 sink_0::height=480 sink_0::zorder=1!“视频/x-raw,宽度=1024,高度=768”!glimagesink 旋转方法=水平翻转 v4l2src 设备=/dev/video13 !视频/x-raw,宽度=640,高度=480!mix.sink_0 &
输出 :
将管道设置为 PAUSED ... 管道处于活动状态,不需要 PREROLL ... 从元素“接收器”获取上下文:gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"(GstGLDisplayWayland)\ gldisplaywayland0" ; 将管道设置为 PLAYING ... 新时钟:GstSystemClock 错误:来自元素 /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:内部数据流错误。附加调试信息:../../../../git/libs/gst/base/gstbasesrc.c(3072): gst_base_src_loop (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: 流停止,原因不-已协商 (-4) 关闭时启用的 EOS -- 等待 EOS 错误后等待 EOS...
命令 :
gst-launch-1.0 -e glvideomixer 名称=混合背景=3 sink_0::xpos=192 sink_0::ypos=0 sink_0::width=640 sink_0::height=480 sink_0::zorder=1!“视频/x-raw,宽度=1024,高度=768”!glimagesink 旋转方法=水平翻转 v4l2src 设备=/dev/video12 !视频/x-raw,宽度=640,高度=480!mix.sink_0 &
输出 :
将管道设置为 PAUSED ... 错误:管道不想暂停。从元素“接收器”获取上下文:gst.gl.GLDisplay=context, gst.gl.GLDisplay=(GstGLDisplay)"(GstGLDisplayWayland)\ gldisplaywayland0"; 错误:来自元素 /GstPipeline:pipeline0/GstV4l2Src:v4l2src0:设备“/dev/video12”不是捕获设备。附加调试信息:../../../git/sys/v4l2/v4l2_calls.c(679): gst_v4l2_open (): /GstPipeline:pipeline0/GstV4l2Src:v4l2src0: Capabilities: 0x4204000 Setting pipeline to NULL ... 释放管道...
请帮忙。我在等你的建议。
编辑 1:
我像这样更改 dts 文件:
现在我似乎是模块:root@imx8qxpmek:/# find -name " ov5647 " ./sys/bus/i2c/drivers/ov5647_mipi ./sys/firmware/devicetree/base/i2c@37230000/ov5647@36 ./sys/firmware /devicetree/base/i2c@58226000/ov5647_mipi@36 ./sys/module/ov5647_camera_mipi
当 ls /dev 现在有两个 /dev/video 。(视频 0 和视频 1)。
为什么现在有两个视频频道?
我的 dts 文件也有错误。那是什么 :
root@imx8qxpmek:/# dmesg | grep ov5
[ 3.667601] ov5647_mipi 16-0036:应用设置时出错,将事情反转 [3.674673] ov5647_mipi:16-0036 的探测失败,错误为 -22
我正在等待一些帮助。
编辑2:我删除了
来自 dts 文件。(我认为有引脚冲突)
我也用这个命令尝试了 video0、video1 和 video12:
但是 video13 不同:
现在我又在等待一些帮助!
docker - 无法连接到 unix:///var/run/docker.sock 的 Docker 守护程序:在 debian 拉伸 armv7 中
我正在使用具有操作系统版本的 IMX7 compulab:cl-debian 4.9.11-cl-som-imx7-5.1。我试图按照如下所述的步骤安装 docker:
https://docs.microsoft.com/en-us/azure/iot-edge/how-to-install-iot-edge-linux
docker安装出来的版本信息如下: docker version
我已经按照谷歌搜索获得的所有链接:
- 无法连接到 unix:/var/run/docker.sock 上的 Docker 守护程序。docker 守护进程是否正在运行?
- https://docs.docker.com/config/daemon/
请告诉我我还能做些什么来解决这个问题。