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.

[参考译文] AM263P4-Q1:如何在运行时动态启用/禁用 OSPI DMA

Guru**** 2966500 points

Other Parts Discussed in Thread: SYSCONFIG

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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1658758/am263p4-q1-how-to-dynamically-enable-disable-ospi-dma-at-runtime

器件型号: AM263P4-Q1
主题: SysConfig 中讨论的其他器件

我对 AM263Px MCU+SDK (MCU_PLUS_SDK_am263px_10_01_00_31) 有疑问。

在我们的工程中、通过 SysConfig 启用了 OSPI DMA。 但是、我们想在启用 RAT 时禁用 OSPI DMA。 是否有方法在运行时启用/禁用 OSPI DMA 而不关闭和重新打开 OSPI 驱动程序(即没有 OSPI_CLOSE ()→OSPI_OPEN ())?

作为参考、我们还考虑修改 OSPI 属性 (OSPI_Attrs) 中的 dmaEnable、但这需要转换掉 const。 这是否受支持和/或建议?
((OSPI_Attrs *) gOspiConfig[CONFIG_OSPI0].attrs)->dmaEnable = false;

请求的响应日期: 2026年6月28日

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

    我还有一个与上述问题有关的问题。

    我们使用 RAT 是因为我们要在 SBL 从 OSPI 闪存加载应用程序映像时切换源应用程序映像。 具体而言、我们希望从以下位置之一加载应用:

    A 侧:0x60081000
    B 侧:0x60881000

    目前、在 SYSCFG 引导加载程序配置中、引导映像偏移似乎固定为“0x60081000“。

    问题:
    除了使用 RAT 之外、是否有办法在 SBL 运行时动态切换应用程序映像的源地址?
    为了动态切换源代码、我们在调用 Bootloader_parseMultiCoreAppImage 之前尝试在 SBL 执行期间使用以下方法更改源地址、看起来工作正常。 是否建议和/或支持此方法?

    gBootloader0Args.appImageOffset = 0x00881000;

    请求的响应日期: 2026年7月1日

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

    尊敬的 Imaoka-San:

    因为我是 OOO、所以很抱歉耽误了我的时间。

    您可以考虑此方法、因为此因素决定驱动程序是否需要使用 DMA。   

    ((OSPI_Attrs *) gOspiConfig[CONFIG_OSPI].attrs)->dmaEnable = false;

    在 10.1 SDK 中、我建议如果使用此方法、则在所有结构中更改 dmaEnable 因子。 也就是说、OSPILLD_InitHandle、 OSPI_Attrs 和 OSPILLD_InitObject 中存在 dmaEnable 字段。

    此外、如果 DMA 关闭、我们只在驱动程序中执行 memcpy、因此也可以从应用程序完成 memcpy。 建议这样做、因为之前的方法未经过测试、我们需要确保所有结构中的 dmaEnable 始终对齐。

    此致、

    Aswin

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

    尊敬的 Imaoka-San:

    除了使用 RAT、是否有办法在 SBL 运行时动态切换应用程序映像的源地址?
    为了动态切换源代码、我们在调用 Bootloader_parseMultiCoreAppImage 之前尝试在 SBL 执行期间使用以下方法更改源地址、看起来工作正常。 是否建议和/或支持此方法?

    对于此类用例、始终推荐使用 AB Swap 选项。  

    更改 gBootloader0Args.appImageOffset 的想法也应该没问题。 这相当于在 SysConfig 中更改地址偏移量。  

    更改了的地址偏移更改了 appImageOffset。

    此致、

    Aswin