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.

[FAQ] [参考译文] [常见问题解答] TDA4VM:无线更新 SD 卡- PSDK RTOS + Linux

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1025472/faq-tda4vm-update-sd-card-over-the-air---psdk-rtos-linux

器件型号:TDA4VM

您好!

我正在使用 TDA4VM、我将从 SD 卡引导。 希望保持这种方式、但也希望能够偶尔更新电路板上的 FW、而无需移除 SD 卡。

我知道在开发过程中我们可以使用 NFS。 但是、该板将被发送到远程位置、并希望开发一种方法、通过网络连接(不一定是 NFS)我们可以更新 FW 一次、然后始终使用该更新从 SD 卡引导。

基本上有2种情况:

1.从 SD 卡引导时的正常操作

2.更新固件后、通过网络更新 SD 卡内容。 然后返回正常运行。

是否有任何方法来实现此目的?

谢谢、

David

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

    尊敬的 David:

    我只是尝试了一种方法、这应该是可能的。 如果有网络、则始终可以使用 tftpboot。

    如果没有网络、您可以使用 UART 将更改后的引导加载程序二进制文件加载到 RAM 中。

    例如:

    引导至 u-boot 提示符。 然后在 U-boot 提示符下输入命令 loady。 您将看到如下所示的内容:

    然后在 Teraterm 中使用 Ymodem 接口传输新的二进制文件:


    您应该选择二进制文件并发送:

    这将需要一些时间、并完成。

    ##准备好二进制(YMODEM)下载到115200bps 的0x82000000 ...
    CCxyzModem - CRC mode、1 (SOH)/1029 (STX)/0 (CAN) packets、5次重试
    ##总大小= 0x00101378 = 1053560字节

    二进制文件将加载到${loadaddr}。

    您只需执行以下操作即可进行验证:

    MD ${loadaddr}

    现在、我们在 RAM 中的${loadaddr}位置有了新的 u-boot.img、需要使用以下命令将文件写入 FAT、即 SD 卡的引导分区:

    fatwrite mmc 1 ${loadaddr}u-boot.img 101378

    请注意、大小应始终以十六进制表示。 U-boot 以十六进制表示大小、因此我使用 十六进制的101378、而  不是十进制的1053560。

    类似的方法可用于更新 SD 卡上的任何二进制文件。

    如果没有其他问题、请单击验证答案。


    此致、
    基尔西

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

    您好、Keerty、

    这似乎很有用。 尽管我刚刚意识到、我要不断更新的唯一部分是 Vision Apps 输出。

    为此、我编译视觉应用、然后执行"make linux_fs_install_sd"。 从我看到的内容来看、它主要是将编译的输出复制到 SD 文件系统中。

    这是可以通过 ssh/scp 完成的吗?

    在哪里可以找到 "make linux_fs_install_sd"正在执行的操作?

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引用 userid="385068" URL"~/support/processors-group/processors/f/processors-forum/1025472/tda4vm-update-sd-card-over-the-air---psdk-rtos-linux/3792222 #3792222"]是否可以通过 ssh/scp 完成此操作?

    是的。 这可以通过网络完成。


    [引用 userid="385068" URL"~/support/processors-group/processors/f/processors-forum/1025472/tda4vm-update-sd-card-over-the-air---psdk-rtos-linux/3792222 #3792222"]在哪里可以找到 "make linux_fs_install_sd"正在执行的操作?

    $PSDKRA_PATH/VISION_APPS

    文件:makerules/makefile_linux_arm.mak

    如果没有其他问题、请单击验证答案。

    此致、
    基尔西

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

    您好、Keerty、

    谢谢、我修改了 makefile_linux_arm.mak 以执行与"make linux_fs_install_sd"相同的步骤、但直接从 EVM 通过 ssh 将文件系统安装在已安装的文件系统上。

    有点慢、但可以满足我们的需求。

    谢谢!