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.

[参考译文] AM3359:RTOS 中的 GPMC 复位错误

Guru**** 2933120 points

Other Parts Discussed in Thread: SYSCONFIG, AM3359

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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/664740/am3359-gpmc-reset-error-in-rtos

器件型号:AM3359
Thread 中讨论的其他器件:SysConfig

您好!

让我来谈谈 ICE 板上 AM335x 的 SYS/BIOS。

我想像这样重置 GPMC 模块。

===================
unsigned int baseAddr=0x50000000;
GPMCModuleSoftReset (baseAddr);

HWREG (0x50000000)|= 2;
===================

但在使用该项目执行该行之后、我遇到了错误。

e2e.ti.com/.../test.zip


这个项目就是这样做的。
这意味着新项目

File -> New -> CCS Project -> SYS/BIOS -> GNU Target Example -> Typic....

我在这之后添加这一行。

我尝试这个项目。

C:\ti\pdk_am335x_1_0_9\packages/MyExampleProjects\GPMC_Test_icev2AM335x_armTestProject

我添加该源

===========================
int main (空)

HWREG (0x50000010)|= 2;<-我添加了
===========================

但我在 Processor SDK 项目中没有遇到错误。

为什么新项目出现错误??

此致
高贵须

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    RTOS 团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    嗨、Biser

    感谢你的答复。
    我等待你的答复。

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

    可以回答吗?

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

    Hiroyasu、

    我们将深入研究并返回给您。

    Lali

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

    您可能希望在应用中包含以下 GPMC 例程

    空 GPMCModuleReset (uint32_t baseAddr)

    /*为 GPMC 启动模块复位。 *
    HW_WR_FIELD32 (baseAddr + GPMC_SysConfig、GPMC_SysConfig_SOFTRESET、
    GPMC_SysConfig_SOFTRESET_RESET);


    从 C:\ti\pdk_am335x_1_0_9\packages/ti\starterware\dal\gpmc.c

    您看到的错误是什么?

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

    感谢你的答复。
    我很抱歉。 很晚了。

    我在执行 GPMCModuleSoftReset (baseAddr)后看到 PC jump void _exit (int 代码);

    很抱歉、我有个问题。
    我尝试使用 baseAddr=0x50000010;

    请告诉我为何跳转到_exit (int 代码)

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

    你好、Lali

    抱歉、不正确。
    没错

    ===================

    使用 GPMCModuleSoftReset 时设置

    unsigned int baseAddr=0x50000000;

    GPMCModuleSoftReset (baseAddr);

    我在寄存器直接置位时置位

    HWREG (0x50000010)|= 2;
    ===========================

    在执行该操作后、它看起来会中止

    它在此之后执行

    此致

    高贵须

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    Hiroyasu、
    此问题能否在 AM3359 ICEv2 EVM 上与您先前附加的测试项目一起重现?

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

    解决了。 我没有设置 MMU。
    它在设置.cfg 文件的 MMU 后工作。

    感谢您的支持!!

    此致
    高贵须