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.

[参考译文] LP-AM261:HS-SE 器件中的 USB CDC

Guru**** 2430620 points


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

https://e2e.ti.com/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1546025/lp-am261-usb-cdc-in-hs-se-device

器件型号:LP-AM261


工具/软件:

您好、

我目前正在尝试使用安全启动相关功能。

我们有一个 SBL 映像和应用程序映像。

应用程序映像具有 USB CDC 功能。

USB CDC 应用程序按预期运行。

然后、我将器件 (LP) 转换为 HS SE。

生成 SBL 映像的 hs.tiimage。

但当我注释掉 SBL 映像中的 HSMRT 加载步骤时:

   应用程序映像正在运行、但 USB 功能无法正常工作 (实际上,USB 中断没有被触发)

  注意:我们已经修改了 SBL 以支持加载未签名的应用程序映像(这是临时实现)

因此、问题是“是否有必要在 SBL 中加载 HSMRT、以便应用程序中的 USB 功能在 HS-SE 器件中工作?“

如果答案是肯定的、原因是什么? 有办法绕过它。

注:我们无论如何都将在最终用例中加载 HSMRT。 (我们将在中间步骤中尝试此操作)

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

    您好、Nithin、

    几个问题:

    相同的.appimage 是否适用于 HS-CDC 器件((FS 应用程序)?

    2.您是否在仅使用 USB 的情况下看到 HS-SE 设备的问题? 或者、您是否尝试过其他一些示例并看到了相同的行为(未触发中断)

    理想情况下、HsmRt 负载不应影响此值。

    此致、
    Shaunak

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

    尊敬的 Shaunak:

    同一.appimage 是否适用于 HS-CDC 器件((FS 应用程序)?

    是的

    您是否看到了仅使用 USB 的 HS-SE 器件的问题? 或者、您是否尝试过其他一些示例并看到了相同的行为(未触发中断)

    我认为其他外设也可以正常工作。

    我也尝试了以下情形:

    sbl_ospi_am261x-lp_r5fss0-0_nortos_ti-arm-clang +  cc_echo_am261x-lp_r5fss0-0_nortos_ti-arm-clang:在这种情况下、USB 正在枚举

    但是、当我从 sbl_ospi_am261x-lp_r5fss0-0_nortos_ti-arm-clang 中删除 hsmrt 加载步骤 后、USB 不会枚举。

    要清楚

    是否需要 在 HS-SE 器件中加载 HSMRT?

    谢谢

    Nithin

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

    尊敬的 Shaunak:

    我还有一个意见。

    HSMRT 中有一种特定的 MPU 设置、不会枚举 USB。

    即使 HSMRT(没有 CONFIG_MPU_FIREWALL8) 已加载、USB 也不会进行枚举。

    自动生成的代码为:

       .id = CSL_FW_L2OCRAM_Bank2_SLV_ID、
       .regionNumber = 0、
       .startAddress = 0x70100000u、
       .endAddress = 0x7017FFFFu、
       .supervorReadConfig = 1、
       .supervorWriteConfig = 1、
       .supervorExecConfig = 1、
       .userReadConfig = 1、
       .userWriteConfig = 1、
       .userExecConfig = 1、
       .nonSecureConfig = 1、
       .debugConfig = 1、
       .aidxConfig = 1、
       .aidConfig =(0x1<<PRIV_ID_CPSW)|(0x1<PRIV_ID_ICSSM0)|(0x1<PRIV_ID_ICSSM1)|(0x1<PRIV_ID_M4FSS0_0)|(0x1<PRIV_ID_R5FSS0_0)|(0x1<PRIV_ID_SS0_ID |(0x1_PRIV_1)
    }、

    请仔细研究一下

    谢谢

    Nithin

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

    您好、Nithin、

    根据上述自动生成的代码、现在可以确定问题是防火墙阻止了 USB。 如果上述代码段不存在、则默认防火墙配置为“no-access"(“(无(无访问)。

     .aidConfig =(0x1<<PRIV_ID_CPSW)|(0x1<PRIV_ID_ICSSM0)|(0x1<PRIV_ID_ICSSM1)|(0x1<PRIV_ID_ICSS0_0)|(0x1<PRIV_ID_SS0_0、0x1_PRIV_ID|<PRIV_SS0_0)|(0x1_PRIV_SS0_0)

    默认情况下、对于 HS-ROM 器件、上述外设内核/CPU 将为“向所有启动器开放“、但对于 HS-SE 器件、默认情况下 FS 器件会被 ROM 本身阻止。

    然后、我们需要 HSMRT 来取消阻止它们。 如果我们没有 HSMRT、它将被阻止。 具体而言、即使您加载 HSMRT 但没有上述 MPU Config、该配置仍将被阻止。

    此致、
    Shaunak

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    [引述 userid=“639822" url="“ url="~“~/support/microcontrollers/arm-based-microcontrollers-group/arm-based-microcontrollers/f/arm-based-microcontrollers-forum/1546025/lp-am261-usb-cdc-in-hs-se-device

    因此、问题是“是否有必要在 SBL 中加载 HSMRT、以便应用程序中的 USB 功能在 HS-SE 器件中工作?“

    [/报价]

    对于使用 USB、CPSW、ICSSM、是的、HSMRT 将是必需的。

    此处没有绕过加载 HSMRT 的好方法。  HSMRT 是设置此防火墙配置的用户。  即、syscfg 还会向 hsmrt 本身发送请求以打开防火墙、没有其他内核可以在 HS-SE 模式下打开防火墙。 因此我们需要 HSMRT。

    注意:我们无论如何都将在最终用例中加载 HSMRT。 (这是我们尝试的中间步骤)

    我想了解为什么我们要跳过 HSMRT(即使是暂时的)

    此致、
    Shaunak