This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] SK-TDA4VM:关于 TI-PSDK QNX 的查询

Guru**** 1963925 points
Other Parts Discussed in Thread: TDA4VM
请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1332415/sk-tda4vm-query-regarding-ti-psdk-qnx

器件型号:SK-TDA4VM
主题中讨论的其他器件:TDA4VM

我们使用的是 QNX SDP 版本7。 1本视频将介绍 TI PSDK 版本或我们的

RTOS - ti-processor-sdk-rtos-j721e-evm-09_00_01_01.tar.gz

QNX - ti-processor-sdk-qnx_j721e_09_00_00_03.tar.gz

硬件- TDA4VM SK 板

目前、我们正在利用上述组件开发 OTA 解决方案。

借助 TI 提供的 SDK、mkcard_qnx.sh 包含三个分区(boot、QNXFS、ROOTFS)

让我们总结一下我们对 TI-SDK 和 QNX

1. IFS 放置在引导分区中的 QNX-QNX-QNx 安装在"/"处。

2. qnxfs 分区包含 QNX 文件系统。

3. rootfs -它在/lib/firmware 文件夹路径中包含 R5F 内核二进制文件。


现在、我们解释一下

1.假设我们在引导分区中放置了两个 QNX-IFS (QNX-IFS_A 和 QNX-IFS_B)映像、并且我们需要在下一个启动周期的运行时间内切换到新的 QNX-IFS (QNX-IFS_B)、我们是否可以通过在 uEnv.txt 中更改 bootcmd 来实现此目的?


dorprocboot=1
bootcmd=run main_cpsw0_qsgmii_phyinit;运行 boot_rprocs;fatload MMC 1 80000 QNX-IFS_A;go 0x80080000
uenvcmd=引导

                     |
                     V

dorprocboot=1
bootcmd=run main_cpsw0_qsgmii_phyinit;运行 boot_rprocs;fatload MMC 1 80000 QNX-IFS_B;go 0x80080000
uenvcmd=引导


2.如果我们有两个 qnxfs 分区(即 qnxfs_A 和 qnxfs_B),并且两个分区都在启动时安装,是否有任何方法可以将所选的分区(A 或 B)设置为活动分区。

3.我们用例在运行时更新 R5F 内核二进制文件,我们尝试挂载 rootfs 分区,但挂载不起作用。 请查找用于装入 rootfs 分区的命令。

mount -v -t ext4 -o exe=all /dev/sd0t131 /rootfs


请提供有价值的反馈

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    (1)修改 uboot 命令似乎很合理。  这是正在开发的生产解决方案、还是更像是一个开发设置?

    (2)一种想法是根据环境变量将所需分区挂载到要使用/搜索的路径。  第二个分区可以挂载到不属于搜索路径的目录路径。   如果不了解具有两个分区的意图、将会停在这里。   请注意,QNX/BlackBerry 在使用他们拥有的驱动程序/文件系统方面会有更多的经验。

    (3) rootfs 格式为 ext4、这是 Uboot 读取固件库所需的格式。  默认情况下、QNX 不能装载到该设备上。  可联系 QNX/BlackBerry 查看 ext4格式是否受支持。   否则,需要修改 Uboot 以使用 FAT32分区,此时 rootfs 可以更改为 QNX 可以挂载到的 FAT32。   请注意、还可以考虑从 SDK RTOS 发出的 SBL 引导流程。

    此致、

    kb

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Kb:

     感谢您的快速响应。

    (1)修改 uboot 命令似乎合理。  这是一个正在处理的生产解决方案,还是更多的开发设置?

        回答: 我们的工作是生产解决方案,而不是开发设置。

    (2)一种想法是根据环境变量将所需的分区装入要使用/搜索的路径。  第二个分区可以挂载到不属于搜索路径的目录路径。   如果不了解具有两个分区的意图、将会停在这里。   请注意,QNX/BlackBerry 在使用他们拥有的驱动程序/文件系统方面具有更多的经验

    回答: 我们使用双分区方法(A/B 分区)的目的是在新的更新(通过 OTA)期间不会干扰现有的分区内容,因此,如果新的更新出现任何问题,我们可以选择切换到现有的工作分区。 希望这将帮助您提供有关这方面的更多信息。

    (3) rootfs 格式为 ext4、这是 Uboot 读取固件库所需的格式。  默认情况下、QNX 不能装载到该设备上。  可联系 QNX/BlackBerry 查看 ext4格式是否受支持。   否则,需要修改 Uboot 以使用 FAT32分区,此时 rootfs 可以更改为 QNX 可以挂载到的 FAT32。   请注意、也可以考虑来自 SDK RTOS 的 SBL 引导流程。[/报价]

    根据我们的理解、QNX 可能不支持 ext4。 如果是这种情况,如何修改 U-Boot 以使用 QNX 支持的文件系统,例如 DOS 或 FAT32?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    正弦波。   

    • 我的理解是,这些分区的目的是,它们将是静态文件系统,不会在运行时由软件对它们进行写入。   
    • 在这种理解下,需要一些持久存储(或外部事件),以确定哪个分区应处于活动状态
    • 要控制哪个分区是活动的,有很多方法,我可以想到两个是:
      1. 将 partitionA 或 partitionB 安装到所需的目录路径/active/filesystem, 另一个可安装到/inactive/filesystem
        • 所有搜索路径都指向/active/filesystem
      2. 始终将 partitionA 装入/partitionA/filesystem,将 partitionB 装入/partitionB/filesystem
        • 引导时,将环境变量设置为驱动搜索路径中将包含哪个文件系统。

    关于 "如何修改 U-Boot 以使用 QNX 支持的文件系统,例如 DOS 或 FAT32 ?",  

    • 请为此主题单独打开 e2e。  这将是一个 uboot 对话、需要在其上使用不同的 TI 资源。
    • 如上所述、还可以考虑 SBL 引导流程、其中映像将由 MCU R5从引导介质加载。

    此致、

    kb

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    再次感谢您的澄清。

    我的理解是,这些分区的目的是将是静态文件系统,而软件不会在运行时对它们进行写入。  [/报价]

     否、在本例中、两个分区(qnxfs_A 和 qnxfs_B)不应是静态的、这意味着  将访问这些分区进行写入操作。

    关于 "如何修改 U-Boot 以使用 QNX 支持的文件系统,例如 DOS 或 FAT32 ?",  

    • 请为此主题单独打开 e2e。  这将是一个 uboot 对话、需要在其上使用不同的 TI 资源。
    [/报价]

    当然, 将为此主题单独打开 e2e

    [/quote]
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好!

    关于 qnxfs_A 和 qnxfs_B 以及在 OTA 中使用两个分区、还有其他问题吗?

    还应与 QNX/BlackBerry 联系,以获取系统级咨询,了解如何最好地使用其驱动程序和文件系统实现这一点。

    感谢您打开这个单独的主题、这个主题已分配给具有 Uboot 知识的人。

    此致、

    kb

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    感谢你的输入

x 出现错误。请重试或与管理员联系。