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.

[参考译文] RTOS/TMS320C6678:在新的 TI RTOS c667x SDK 5.1 "CSL_pscAux.h"有一些问题(错误:#137 struct "<unnamed>"没有字段"MDCTL0")。

Guru**** 2551110 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/758628/rtos-tms320c6678-in-new-ti-rtos-c667x-sdk-5-1-csl_pscaux-h-has-some-issue-error-137-struct-unnamed-has-no-field-mdctl0

器件型号:TMS320C6678

工具/软件:TI-RTOS

在新的 TI RTOS c667x SDK 5.1中 ,“CSL_pscAux.h”有一些问题(错误:#137 struct” "没有字段"MDCTL0")。 特别是在 csl_pscAux.h 文件中,“csl_PscEnableClock()”函数在  结构没有任何成员(如“MDCTL0”)的第一个参数(hpsc->regs->MDCTL0)中具有像“csl_fins (hpsc->regs->MDCTL0)”这样的代码;

静态内联
  CSL_Status CSL_PscEnableClock (
   CSL_PscHandle      hPSC、
   CSL_PscPeripherals * PscModule
)

   switch (* pscModule){
   
       案例 CSL_PSC_MODULE_RSA0:
        CSL_fins (hPSC->regs->MDCTL0PSC_MDCTL0_NEXT、0x3);
        中断;
       案例 CSL_PSC_MODULE_RSA1:
        CSL_fins (hPSC->regs->MDCTL1PSC_MDCTL1_NEXT、0x3);
        中断;
       案例 CSL_PSC_MODULE_RSA2:
        CSL_fins (hPSC -> regs->MDCTL2PSC_MDCTL2_next、0x3);
        中断;
       CSL_PSC_MODULE_AIF 案例:
        CSL_fins (hPSC->regs->MDCTL6PSC_MDCTL6_NEXT、0x3);
        中断;
       CSL_PSC_MODULE_SRIO 案例:
        CSL_fins (hPSC->regs->MDCTL7PSC_MDCTL7_NEXT、0x3);
        中断;
       案例 CSL_PSC_MODULE_RAC:
        CSL_fins (hPSC->regs->MDCTL8PSC_MDCTL8_NEXT、0x3);
        中断;
       案例 CSL_PSC_MODULE_TCP:
        CSL_fins (hPSC->regs->MDCTL9PSC_MDCTL9_NEXT、0x3);
        中断;
       案例 CSL_PSC_MODULE_VCP:
        CSL_fins (hPSC->regs->MDCTL10PSC_MDCTL10_next、0x3);
        中断;
       默认值:
        返回 CSL_ESYS_INVPARAMS;
   
 }

 返回 CSL_SOK;



错误:

#137结构" 没有字段“MDCTL0” 。

#137结构" 没有字段“MDCTL1” 。

#137结构" "没有字段"MDCTL2"  

#137结构" 没有字段“MDCTL6” 。

#137结构" 没有字段“MDCTL7” 。

#137结构" 没有字段“MDCTL8” 。

#137结构" 没有字段“MDCTL9” 。

#137结构" 没有字段“MDCTL10” 。

#20标识符"CSL_PSC_MDCTL0_NEW_MASK"未定义。

#20标识符"CSL_PSC_MDCTL1_NEW_MASK"未定义

#20标识符"CSL_PSC_MDCTL2_NEW_MASK"未定义

#20标识符"CSL_PSC_MDCTL6_NEW_MASK"未定义

#20标识符"CSL_PSC_MDCTL7_NEW_MASK"未定义

#20标识符"CSL_PSC_MDCTL8_NEW_MASK"未定义

等等

"hPSC -> regs->MDCTL0",结构位于 csl_psc.h 和 cslr_psc.h 中

最后、STRUCT_CSL_PscRegs 具有该定义  

typedef 结构 {
   易失性 uint32 PID;
   易失性 UINT8 RSVD0[16];
   易失性 UINT32 VCNTLID;
   易失性 UINT8 RSVD1[264];
   易失性 UINT32 PTCMD;
   易失性 UINT8 RSVD2[4];
   易失性 UINT32 PTSTAT;
   易失性 UINT8 RSVD3[212];
   易失性 uint32 PDSTAT[32];
   易失性 UINT8 RSVD4[128];
   易失性 UINT32 PDCTL[32];
   易失性 UINT8 RSVD5[1152];
#if defined (SOC_C6678)||Defined (SOC_C6657)
   volatile uint32 mdstat[32];
   易失性 UINT8 RSVD6[384];
   易失性 UINT32 MDCTL[32];
其他
   volatile uint32 mdstat[64];
   易失性 UINT8 RSVD6[256];
   易失性 UINT32 MDCTL[64]
#endif
} CSL_PscRegs;

这里 MDCTL 是数组。 可能是 您犯了错误 MDCTL0、而不是 MDCTL[0]。 请澄清该错误。

PSC_MDCTL0_NEXT 宏定义也不存在。 请为该宏提供替代文件。

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

    由于节假日,答复可能会延迟。

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

    我不确定您是混合两个不同的代码库还是从某些旧软件迁移、但如果您在 CSL 软件包中检查 CSL_pscAux.h 文件、则没有如您所示对 MDCTL0的引用。 n`t、我搜索了整个 CSL 封装、没有找到您要讨论的 CSL_PscEnableClock?

    您能否提供看到此函数定义或 MDCTL0引用的确切路径? 根据 CSLr 定义、您需要以数组元素的形式访问 MDCTL。 请检查 pdk_am57xx_1_0_12\packages/ti\board\src\evmKeystone\board_clock.c 文件中提供的相关示例。

    此致、
    Rahul
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    谢谢、
    实际上、问题也是在我们一侧使用相同的文件名"CSL_pscAux.h"。 因此它不采用 PDK 文件。