问题标签 [omap]
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.
beagleboneblack - 为什么在 U-boot 中正确进行代码重定位?
我试图通过浏览源代码来了解 BeagleBone Black 的启动过程。假设我将 MLO 和 u-boot.img 文件保存在 micro-SD 卡中,并使 BeagleBone 从 SD 卡启动。
据我了解,ROM 代码首先执行,并将 MLO 文件从 MMC 加载到 SOC 的内部 SRAM 中。MLO 文件包含 x-loader 的代码,这是一个第二阶段程序加载器 (SPL)。然后 SPL 设置 DRAM 并将第三阶段 Program Loader(U-boot 正确)复制到 DRAM 中。U-boot 直接从 DRAM 开始执行。
U-boot 本身的体系结构相关部分位于 U-boot 源的 arch/arm/ 目录中。与 SPL 有关的代码位于 spl/ 目录中。(在执行 make mrproper 后跟 make SPL 时,*.o 文件仅在 spl/ 目录中创建)
对于 U-boot 本身,我猜这是执行流程 - arch/arm/cpu/armv7/start.S 位于重置向量处(因此它首先运行),经过一些初始化后,它调用位于拱/臂/lib/crt0.S 。
在 crt0.S 中,board_init_f() 被调用,它设置 DRAM(和其他东西),然后返回到它离开的地方(在 main_ 中)。它稍后调用函数 relocate_code 将其再次重新定位到 DRAM。
如果这已经由 SPL 完成,为什么 U-boot 正确需要再次设置 DRAM 并再次重新定位?我在这里错过了什么吗?
gcc - 如何修复“警告 #1173-D:属性“已弃用”被忽略?
一些常见的实用程序函数需要像这样被弃用:
这在 OMAP 的 ARM 端按预期工作,如下所示:
但它在 DSP 端像这样失败了
使用 gcc (Ubuntu/Linaro 4.6.3-1ubuntu5) 4.6.3 和 ti-dvsdk_omapl138-evm_4_02_00_06/c6000_7.4.7。在 DSP 构建上需要更改哪些内容?
linux - AM335x - 用于 linux 内核的 i2c 从站
我需要为 TI AM335x 提供 i2c 从属 Linux 内核驱动程序。我用谷歌搜索并没有找到确切的信息。我应该从头开始做所有事情,还是有人对此有一些参考?甚至是补丁
谢谢
阿夫纳
jtag - 无法使用 JTAG 读取 TI OMAP5912 ARM 内核的 SDRAM
我正在尝试使用 Code Composer Studio 7 使用 XDS560v2 TRAVELER JTAG 仿真器连接到 OMAP5912 设备。当使用Connect Target连接到 C55x 设备时,它成功地停止在任意 RAM 点。在 ARM9 内核上使用Connect Target时,它总是停在 0xFFFF0000。现在,当我查看它的寄存器时,一切似乎都很好,我看到 LR 位于 SDARM 上已知的固件位置周围,例如 0x102B1AD4。但!当我访问 Code Composer Studio 7 的内存浏览器并查看 SDRAM 位置时,我只看到以下字节链“0x00009C46”。我试图在 CPU 内存和物理内存视图之间切换,但没有任何帮助。有人知道这里发生了什么吗?谢谢你。
embedded - 操作系统更新后如何恢复嵌入式 CE 移动设备
我的问题是如何设置下面的代码以便我们可以将文件发送到单元,我们有十六进制格式的文件,我不明白使文件发送的编码级别,这是否是命令编码。
使用 Image v04.57.04 更新 MC92N0 的操作系统。
现在单元是空白的,重启电源灯闪烁一次。
可以连接到超级终端但只能获得那些命令?
问题是如何重新加载文件?把它带回来?
在一个工作单元上。软件通过RS232接口加载到Emmc芯片OMAP4430 ES 2.3。当设备正常工作时,系统具有如下分区。
我们可以看到的命令是
超级终端设置为 11500 8-N-1。
qt - 为 QT 应用程序选择 Wayland 输出
我在 TI 嵌入式平台 (AM5728) 上运行 QT 5.11.3。我的显示管理器是 Wayland 1.16 (weston)。我的应用程序的 QPA 是 Wayland-Egl。
嵌入式系统具有 LCD 面板和 HDMI 输出。两者都在 Wayland 中被识别并视为独立输出。
我的问题是:如何以编程方式选择我的 QT 应用程序从哪个 Wayland 输出开始?
我发现如果我使用鼠标,应用程序会在鼠标当前处于活动状态的输出上启动,但我需要让应用程序在特定的所需输出上启动(没有鼠标)。
是否有任何后端 QPA 相关的调用或设置可以配置为允许这样做?
谢谢!
linux - 在内存空间中查找寄存器的物理地址
我正在尝试查看我的 ARM Cortex A8 处理器的 PRM_RSTST 寄存器的状态,以找出重置的原因,因为我的处理器 TI8148 没有实现 WDIOC_GETBOOTSTATUS。我知道数据表的偏移量/地址应该是 0xA8。但是,如果我尝试使用 __raw_readl(0xA8) 读入内核驱动程序,则会出现段错误。我的另一个想法是使用 /dev/mem,但是如果我使用 devmem2 0xA8 我得到
于是我用 cat /proc/iomem 看了一下内存的映射
所以显然 0x40127000 没有映射 devmem2 想要查看的位置。
那么我在哪里可以找到偏移量为 0xA8 的寄存器呢?
reverse-engineering - FOMA P900iV 的 JTAG 相关问题
我目前正在尝试使用 JTAG 对 FOMA P900iV 手机进行逆向工程。这是我的第一次,我对此很陌生。我被告知要追求 JTAG,因为 UART 可能在此被禁用,但目前我们不知道因为没有人尝试过这样做(公开)。我计划提取它的操作系统,据说是 ITRON,但在这一点上,当涉及到像这样的日本手机时,我只能查看 Wiki。该手机具有德州仪器 (TI) 的 OMAP 1610 处理器,也称为 OMAP5912。
链接到 OMAP 5912 的数据表在此处输入图像描述处理器(pg90 JTAG 信号描述)https://www.ti.com/lit/ds/symlink/omap5912.pdf?ts=1617777287037
由于德州仪器公开了数据表,我已经用万用表确定了一些 JTAG 点并找到了 TCK、RTCK、TDI 和 TRST。我似乎找不到的测试点是 TDO 和 TMS。我已经尝试过,但我无法找到它们。这是我的问题
- 是否禁用了某些 JTAG 点?(这是日本,我不会感到惊讶)
- 有没有一种方法可以在不擦除所有内容的情况下重置 JTAG 点?
- 我可以在没有 TDO 和 TMS 的情况下转储操作系统和其他所有内容吗?
- 有人告诉我一个测试点不应该有多个连接,这是真的吗?我看过其他帖子说的不是这样。