问题标签 [imx6]
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.
linux - PPP连接问题嵌入式linux
我正在尝试通过串行线 (RS-422) 在 iMX6 和桌面之间建立 PPP 连接。但是在嵌入式系统方面,由于错误而导致连接失败:
警告:无法打开 ppp 数据库 /var/run/pppd2.tdb
或者
ioctl (SIOCGIFFLAGS):错误的文件描述符(第 2389 行)
我检查了几件事:
启用所有内核模块:
- 配置_PPP
- CONFIG_PPP_BSDCOMP
- CONFIG_PPP_DEFLATE
- CONFIG_PPP_FILTER
- 配置_PPP_MPPE
- CONFIG_PPP_MULTILINK
- 配置_PPPOE
- CONFIG_PPP_ASYNC
- CONFIG_PPP_SYNC_TTY
安装 pppd 包
命令的完整输出如下:
将以下行添加到 pppd 源以调试此问题:
sock_fd - 编号:4(第 2386 行)
有人知道我会做错什么或我错过了什么吗?
linux - 为 imx6 ARM 处理器构建新内核
我将为 Ubuntu 16.06 和内核 4.1.15_2.0.0_ga 构建一个内核。
我有一块来自 Technexion 公司的基于 iMX6-dl 的板。他们提供了对其内核、配置和设备树文件的访问权限。
我使用这些步骤来构建内核并向内核添加新模块(驱动程序),例如用于 Atheros PCIe WiFi 卡的 ath9k。
在这些步骤之后,内核构建完成,没有任何错误。在日志中,我看到我在 menuconfig 编译中选择的所有模块都没有任何错误,并且我可以看到 *.o 文件。
我还看到在 menucconfig 设置中选择为“M”的驱动程序的 *.ko 文件。
构建完成后,我使用这两个命令行将新内核添加到已经使用公司提供的具有相同内核和版本的 Ubuntu 的映像的 SD 卡中。
当我使用 make module_install 时,它只是将 *.ko 驱动程序复制到 SD 卡。
我不知道如何将 menuconfig 中标有“*”的其他驱动程序添加到 SD 卡,例如“ath9k.o”。
我是这些软件的新手。
有什么帮助吗?我错过了什么吗?
raspberry-pi3 - 从源代码运行时出现 Mender.io 错误?
我正在尝试让 Mender.io 工作,这是一个远程更新系统。我只想看到设备出现在服务器上,不知何故那没有发生。我在apalis imx6上从源代码安装了mender,我试图像这样运行它:mender -daemon
它启动正常,然后给我以下错误:
我已经添加了使用 etc/mender/server.crt 中提供的 keygen 生成的证书,并使用 ./up 启动了 docker 服务器我也没有在设备下看到我的设备。
我还能做什么?
imx6 - IMX6 + webengine 不显示最新的网站状态,为什么?
我用 html、css、js 编写了一个简单的网站。没有错误,并且在 chromium 桌面版本中显示一切正常。问题是,我想在 IMX6 Solo + webengine 上显示它。出于发展的原因,我使用了 Apache2,只是为 IMX做了类似 ./webengine http://172.XX.XX.XXX/index.html之类的操作。起初它工作得非常好,但如果我想更改我的网站代码中的某些内容并尝试在 IMX6 上刷新它,那么不会发生任何新的事情。它仍然显示的是旧版本的网站。在铬中,我编写新代码的所有内容都出现了..但不在 IMX 上。有谁知道为什么?
glibc - Yocto:将 glibc 库添加到 rootfs
我正在使用 Yocto-morty 为我们的自定义板(iMX7)构建二进制文件。我需要一些库,例如来自 glibc 包的 UTF-32.so、UTF-16.so、UTF-7.so 用于蓝牙文件传输。但是这些库在 rootfs 中不可用,只有 /usr/lib/gconv 下可用的文件是 gconv-modules 和 ISO8859-1.so。所以我试图通过添加具有以下内容的新 bbappend 文件 glibc_2.24.bbappend 来添加这些库
但这会导致以下错误:
然后我尝试从图像中删除 glibc-locale,但由于一些依赖问题,我无法这样做。
谁能帮我将上述库添加到rootfs?
qml - 在imx6的嵌入式Linux上的Qt5.9.2 QML应用程序中,Eventfilter没有收到任何TouchEnd事件
有一个带有linux3.0.35&Qt4.8.5的imx6板。
我已通过交叉编译 Qt5.9.2 源代码将 Qt4.8.5 更新为 Qt5.9.2。
QML 应用程序可以用Qt5.9.2 构建OK 并显示OK。
但是触摸无效,虽然触摸显示效果很好。
eventfilter() 中的日志如下:
为什么日志中有四个 TouchBegin,虽然是一次触摸?
为什么日志中没有任何 TouchEnd?
PS:
我的交叉编译配置如下:
./configure -release -xplatform linux-arm-gnueabi-g++ -no-opengl -opengl es2 -prefix ~/qt5.9.2-arm -opensource -confirm-license -make libs -nomake tools -nomake tests -skip qtandroidextras -skip qtconnectivity -skip qtdoc -skip qtgamepad -skip qtlocation -skip qtmacextras -skip qtnetworkauth -skip qtpurchasing -skip qtsensors -skip qtserialbus -skip qtspeech -skip qtsvg -skip qttools -skip qtwebchannel -skip qtwebengine -skip qtwebsockets -skipextrastq no-feature-iconv -no-feature-gestures -no-qml-debug
security - u-boot 可以验证已签名的硬件吗?
我找到了几页和文档,描述了如何使用 i.MX6 处理器和 u-boot 实现安全启动。这对我来说很好,因为它可以确保只能加载原始固件(u-boot 和内核),但这还不够。实际上,我也有必要只将批准的硬件(也就是在某种程度上签名)用于我的固件。U-boot 可以验证处理器(尤其是 i.MX6)上是否存在某种签名,例如 HAB 本身的激活或 ROM 的关闭状态,如果是,如何实现此功能?谢谢!!
qt - GStreamer 上的 Qt 覆盖
考虑到当前设置,我有一个问题:
- Yocto Linux 上
iMX6
- 既不是窗口管理器,也不是显示管理器
- 一个功能齐全的 Qt 应用程序,在 Debian 9 上测试
该应用程序包含两个主要元素:
- 一部分,带有
GStreamer
imxg2dvideosink - 一个半透明的 Qt Overlay,应该显示在流上
问题:
如何在流上显示叠加层,同时将两个部分都全屏显示(填满整个屏幕)?可能的解决方案:
/dev/fb1
作为覆盖/dev/fb0
(如何将单个应用程序拆分为两个fb
?)- 使用显示管理器?
- 使用窗口管理器?
linuxfb
而不是eglfs
?
我当前(不工作)的解决方案:
- 使用
-platform eglfs
- 该应用程序将首先启动
GStreamer
,然后显示覆盖
linux - 使用 GDB 远程调试器时,linux 系统调用永远不会返回
我正在尝试远程调试(使用 gdbserver)在 iMX6 上运行的应用程序。我的设置是 Ubuntu 16.04 LTS,我使用的是 QT Creator 3.5.1(基于 5.5.1 GCC 5.2.1)。
首先要注意的是,如果我删除系统调用,iMX6 应用层的 QT GDB 远程调试器(单步)正在工作。“系统(...)”或“读取(...)”。等等。但是,任何进行系统调用的尝试都会挂起该进程。系统调用永远不会返回。
第二件事要注意的是,当直接从 iMX6 执行(包括系统调用)时,应用程序运行得很好。我什至可以使用 GDB(命令行)来调试应用程序。这里没问题。
在 QT Creator 中,我已将附加 GDB 命令“设置远程系统调用允许 1”添加到 QT Creator 在启动应用程序之前运行的附加调试器命令中。没有成功,仍然挂起。所有系统调用都挂起并且永不返回。
有谁知道这里发生了什么?为什么我的系统调用没有返回。