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.

[参考译文] PROCESSOR-SDK-J7200:在 PSDK 9.1基础上支持 MCAN

Guru**** 2542730 points


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

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1342381/processor-sdk-j7200-mcan-support-on-top-of-psdk-9-1

器件型号:PROCESSOR-SDK-J7200

您好,J7200 CHAMP!

您能否支持在 PSDK 9.1上启用 MCAN?  

客户已尝试介绍基于 PSDK8.5的指导。 但它仍然没有激活,只要遵循相同的步骤的指导。  

请在 PSDK9.1上继续执行 MCAN 启用任务、即使在 PSDK 9.2之前也向我们提供热修补程序。 官方发布版本。

谢谢。

此致、  

插孔  

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

    您好、Jack、

    GPIO 的偏移在 J7200的9.x SDK 中进行了移动。 您能否尝试改用此补丁?

    e2e.ti.com/.../0001_2D00_arm64_2D00_dts_2D00_ti_2D00_k3_2D00_j7200_2D00_Add_2D00_support_2D00_for_2D00_multiple_2D00_CAN_2D00_i.patch

    此致、

    大沼市

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

    你好、 Takuma、

    我应用了你的补丁,但问题仍然存在。

    我发送了数据包、但 TX、Rx 计数器中没有变化。

    您能否按如下方式发送 DTS 文件?

    k3-j7200-main.dtsi
    k3-j7200-common-proc-board.dts
    k3-j7200-mcu-wakeup.dtsi

    此致、

    root@j7200-evm:~# cansend CAN0 999#DEADBEEF
    root@j7200-evm:~# cansend CAN1 999#DEADBEEF
    root@j7200-evm:~# ifconfig
    CAN0链接 encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    上运行 NOARP MTU:72 Metric:1
    Rx 数据包:0错误:0丢弃:0溢出:0帧:0
    TX 数据包:0错误:0丢弃:0溢出:0载波:0
    冲突:0队列 txelen:10
    RX 字节:0 (0.0 B) TX 字节:0 (0.0 B)
    中断:172

    CAN1 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00
    UP NOARP MTU:72公制:1
    Rx 数据包:0错误:0丢弃:0溢出:0帧:0
    TX 数据包:0错误:0丢弃:0溢出:0载波:0
    冲突:0队列 txelen:10
    RX 字节:0 (0.0 B) TX 字节:0 (0.0 B)
    中断:173

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

    尊敬的 Ryu 和 Jack:

    抱歉、我漏掉了另外两个补丁。 您能否应用这三个补丁?

    我可以确认正在使用能够传输的 J31和 J30接头。

    root@j7200-evm:~# cansend CAN1 123#DEADBEEF
    CAN0 123 [4] de AD Be EF
    CAN1 123 [4] de AD Be EF
    root 用户@j7200-evm:~#

    此外、与9.1 SDK 版本共享 dtb 文件以便快速测试: e2e.ti.com/.../0257.k3_2D00_j7200_2D00_common_2D00_proc_2D00_board.dtb

    此致、

    大沼市

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

    你好、 Takuma、

    我已经尝试了以下两种方法,但问题仍然存在。

    1)修补 DTS 文件。  

    0001-ARM64-dts-ti-k3-j7200-add-support-for-can-nodes.patch
    0002-ARM64-DTS-ti-K3-j7200-SOM-p0-Add-support-for-can-ins.patch
    0003-ARM64-DTS-ti-K3-j7200-Add-support-for-multiple-can-i.patch

    2)将 dtb 文件复制到 /boot/dtb/ti/k3-j7200-common-proc-board.dtb

    您是否能够按如下方式发送您的内核映像文件?

    root@j7200-evm:/boot#查找。 -name "*"

    ./图像
    ./fitImage
    ./ DTB
    /dtb/ti
    /dtb/ti/k3-j7200-common-proc-board.dtb
    /dtb/ti/k3-j7200-evm-quad-port-eth-exp.dtbo
    /dtb/ti/k3-j7200-evm-virt-mac-client.dtbo
    /dtb/ti/k3-j7200-evm-mcspi-loopback.dtbo
    ./Image-6.1.46-g0cc944dd47
    /fitImage-6.1.46-g0cc944dd47
    ./EFI
    /EFI/BOOT
    /EFI/BOOT/bootaa64.efi
    /EFI/BOOT/grub.cfg

    谢谢你。

    此致、

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

    你好,柳

    我目前不在办公室,直到下周一个星期二,无法访问我的工作 PC。 我可以在返回办公室时发送这些文件。

    不过、我相当肯定这些是启用 MCAN 所需的补丁。 我建议在发送 CAN 消息时检查您是否连接到了正确的 CAN 接头、如果您有一些线路、则连接两个 CAN 接头以查看您是否可以发送和接收 CAN 消息。

    需要回顾的一件有用的事情是 dmesg。 在 dmesg 中、您是否看到任何与 CAN 相关的错误消息? 如果您发送它们、我们也可以对它们进行审核。

    此致、

    大沼市

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

    你好,柳

    附件为以下文件:

    e2e.ti.com/.../5661.boot.zip

    和一些日志:

    e2e.ti.com/.../cansend.txt

    我注意到在这次启动中、可以在 CAN1和 CAN2上启动。 枚举可能会起作用、因此请确保在发送/接收消息时使用正确的 CAN 接口。

    此外、如果未接收到 CAN 消息、则发送 CAN 消息不会使 ifconfig 下的 TX 计数器递增。 TX 计数器仅在收到消息后递增。

    此致、

    大沼市

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

    你好、 Takuma、

    我通过更改您提供的内核进行了测试、但它仍然不起作用。 并且它似乎是无效的 CAN 接口。

    root@j7200-evm:/boot/dtb/ti 编号 uname -a
    Linux j7200-evm 6.1.46-Dirty #1 SMP 抢占星期四28 15:42:22 CDT 2024 Aarch64 GNU/Linux

    root@j7200-evm:/boot/dtb/ti # IP 链路设置 CAN0类型 CAN 比特率1000000
    找不到设备"CAN0"

    我注意到、使用补丁内核多次重新启动后、CAN 数据成功传输一次。 但是,重新启动后,不传输任何数据。

    我继续进行重启测试、但未传输 CAN 数据。

    似乎有些东西是不稳定的。

    此致、

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

    你好,柳

    无法找到设备"CAN0"[/报价]

    这意味着 CAN 接口在启动时未初始化。 您能否共享两个命令的输出?

    • ifconfig -a > ifconfig_output.txt
    • dmesg > dmesg_output.txt

    此外、在应应用补丁的 Linux SDK 内核中、您能否运行以下命令并共享输出? 请注意、Linux 内核文件路径应与 /ti-processor-sdk-linux-j7200-evm-09_01_00_07/board-support/ti-linux-kernel-6.1.46+gitAUTOINC+5892b80d6b-g5892b80d6b

    • Git diff > diff_output.txt

    此致、

    大沼市

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

    你好、 Takuma、

    我    为您提供的内核镜像附加了 ifconfig_output.txt 文件 dmesg_output.txt。 请随附这些文章。

    我检查了 文件夹"board-support/ti-linux-kernel-6.1.46+gitAUTOINC+5892b80d6b-g5892b80d6"、我做了任何更改。

    我将您的补丁应用于"meta-ti-bsp/ecips-kernel/linux/files"

    如果你需要我的内核 dmesg 文件、我将发送它。

    此致、

    Ryu@mseo-System-Product-Name:~/smnt2/ti-processor-sdk-linux-j7200-evm-09_01_00_07/board-support/ti-linux-kernel-6.1.46+gitAUTOINC+5892b80d6b-g5892b80d6b$ git diff

    Ryu@mseo-System-Product-Name:~/smnt2/ti-processor-sdk-linux-j7200-evm-09_01_00_07/board-support/ti-linux-kernel-6.1.46+gitAUTOINC+5892b80d6b-g5892b80d6b$
    Ryu@mseo-System-Product-Name:~/smnt2/ti-processor-sdk-linux-j7200-evm-09_01_00_07/board-support/ti-linux-kernel-6.1.46+gitAUTOINC+5892b80d6b-g5892b80d6b$
    Ryu@mseo-System-Product-Name:~/smnt2/ti-processor-sdk-linux-j7200-evm-09_01_00_07/board-support/ti-linux-kernel-6.1.46+gitAUTOINC+5892b80d6b-g5892b80d6b$

    Ryu@msoco-System-Product-Name:~/smnt2/ti-processor-sdk-linux-j7200-evm-09_01_00_07/Yocto-build/sources/meta-ti$ git status
    HEAD가 다음 위치에서 분리:09.01.00.006
    커밋하도록 정하지 않은 변경 사항:
    (무엇을 커밋할지 바꾸려면"git add 파일……"을 사용하십시오)
    (작업 디렉토리의 변경을 무시하려면"git restore)" ..."을 사용하시오)
    수정함:meta-ti-bsp/ecipes-kernel/linux/linux-ti-staging _6.1.bb

    추적하지 않는 파일:
    (커밋할 사항에 포함하려면"git add 파일……"을 사용하십시오)
    meta-ti-bsp/ecips-kernel/linux/files/0001-arm64-dts-ti-k3-j7200-add-support-for-can-nodes.patch
    meta-ti-bsp/ecips-kernel/linux/files/0002-arm64-dts-ti-k3-j7200-som-p0-add-support-for-can-ins.patch
    meta-ti-bsp/ecips-kernel/linux/files/0003-arm64-dts-ti-k3-j7200-add-support-for-multiple-can-i.patch

    커밋할 변경 사항을 추가하지 않았습니다("git add"및/또는"git commit -a"를
    사용하십시오 μ A)
    Ryu@msoco-System-Product-Name:~/smnt2/ti-processor-sdk-linux-j7200-evm-09_01_00_07/Yocto-build/sources/meta-ti$ git diff
    diff --git a/meta-ti-bsp/recips-kernel/linux/linux-ti-staging _6.1.bb b/meta-ti-bsp/recips-kernel/linux/linux-ti-staging _6.1.bb
    索引 e1ab9804..073e83af 100644
    -- a/meta-ti-bsp/recips-kernel/linux/linux-ti-staging _6.1.bb
    ++ b/meta-ti-bsp/recips-kernel/linux/linux-ti-staging _6.1.bb
    @@-33,7+33,10 @@ PR ="${machine_kernel_PR}"
    kernel_GIT_URI ?="git://git.ti.com/git/ti-linux-kernel/ti-linux-kernel.git
    kernel_GIT_Protocol ="https"
    SRC_URI +="${kernel_GIT_URI};PROTOCOL=${kernel_GIT_Protocol};branch=${branch}\
    -文件://defconfig"
    +文件://defconfig \
    + file://0001-ARM64-DTS-ti-K3-j7200-add-support-for-can-nodes.patch \
    +文件://0002-ARM64-DTS-ti-K3-j7200-SOM-p0-Add-support-for-can-ins.patch \
    +文件://0003-ARM64-DTS-ti-K3-j7200-add-support-for-multiple-can-i.patch"

    #特殊配置 remoteproc/rpmsg IPC 模块
    module_conf_rpmsg_client_sample ="黑名单 rpmsg_client_sample"
    Ryu@mseo-System-Product-Name:~/smnt2/ti-processor-sdk-linux-j7200-evm-09_01_00_07/Yocto-build/sources/meta-ti$

    e2e.ti.com/.../7802.dmesg_5F00_output.txte2e.ti.com/.../ifconfig_5F00_output.txt

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

    你好、 Takuma、

    我    为应用了补丁的内核映像附加了 dmesg_output.txt、ifconfig_output.txt 文件。

    有时、CAN 器件在重启后可以工作...

    此致、

    e2e.ti.com/.../8688.dmesg_5F00_output.txte2e.ti.com/.../6131.ifconfig_5F00_output.txt

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

    你好,柳

    似乎内核模块没有在7802.dmesg_output.txt 中加载、这可能是因为内核版本名称不同。

    否则、在8688.dmesg_output.txt 中、一切似乎都在工作。 CAN 接口无法启动时、您是否可以发送 dmesg 和 ifconfig -A 日志? 我将通过启动日志来查看是否有任何错误会阻止 CAN 接口的初始化。

    此致、

    大沼市

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

    你好、 Takuma、

    8688.dmesg_output.txt、 6131.ifconfig_output.txt、这些日志是在 CAN 接口不工作时生成的。 看起来没有问题,但是不能正常工作。。。

    您能否发送您的 tisdk-base-image-j7200-evm.wic.xz 文件?

    此致、

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

    你好,柳

    8688.dmesg_output.txt、6131.ifconfig_output.txt 、这些日志是在 CAN 接口不工作时生成的。 看起来没有问题,但是不能正常工作。。。 [/报价]

    有趣。 您能否对此图像进行一下实验?

    1. 使用一些跳线将 EVM 电路板上的 J31和 J30连接起来
    2. 启动电路板并登录
    3. 初始化全部4个 CAN 接口:
      IP 链路设置 CAN0类型 CAN 比特率1000000
      IP 链路设置 CAN1类型 CAN 比特率1000000
      IP 链路设置 CAN2类型 CAN 比特率1000000
      IP 链路设置 CAN3类型 CAN 比特率1000000
    4. 打开全部4个 CAN 接口:
      IP 链路设置 CAN0开启
      IP 链路设置 CAN1开启
      IP 链路设置 CAN2开启
      IP 链路设置 CAN3开启
    5. 开始侦听全部4个 CAN 接口:
      candump CAN0和
      CANDump CAN1和
      坎德姆 CAN2和
      坎德姆 CAN3和
    6. 从全部4个 CAN 接口发送消息:
      CANSend CAN0 123#DEADBEEF
      CANSend CAN1 123#DEADBEEF
      CANSend CAN2 123#DEADBEEF
      CANSend CAN3 123#DEADBEEF

    以下是需要的日志以供参考:

    e2e.ti.com/.../can_5F00_logs_5F00_9_5F00_1.txt

    我怀疑 CAN 接口在每次启动时的枚举方式有所不同。 例如、在某些引导时、J30连接器会枚举为 CAN0接口、有时还会用作 CAN2接口。 这就解释了为什么在您的设置中启动了一些引导程序。

    上述实验将初始化所有4个接口、因此其中一个接口应该始终工作。

    此致、

    大沼市

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

    你好、 Takuma、

    我已测试新的 PDK 09_02。

    我已确认在 PDK 09_02中默认启用了 Mcan、它运行良好。

    感谢您的支持。

    我们还有另一个 USB 端口无法正常工作的问题。 您能否继续为此提供支持?

    此致、

    root@j7200-evm:~# ifconfig -a
    ETH0:flags=4163 MTU 1500
    INET 192.168.0.157网络掩码255.255.255.0 broadcast 192.168.0.255
    inet6 fe80::3608:e1ff:fe65:b94d prefixlen 64 scopeid 0x20
    乙醚34:08:e1:65:b9:4D txqueuelen 1000 (以太网)
    RX 数据包5866字节518937 (506.7 KiB)
    RX 错误0丢弃319溢出0帧0
    TX 数据包57字节6563 (6.4 KiB)
    TX 错误0丢弃0溢出0载波0冲突0

    ETH1:flags=4163 MTU 1500
    inet6 fe80::722e:8cf:fe9a:73f5 prefixlen 64 scopeid 0x20
    乙醚70:2e:8c:9a:73:F5 txqueuelen 1000 (以太网)
    RX 数据包0字节0 (0.0B)
    RX 错误0丢弃0溢出0帧0
    TX 数据包34字节6380 (6.2 KiB)
    TX 错误0丢弃0溢出0载波0冲突0

    ETH2:flags=4163 MTU 1500
    inet6 fe80::726c:5ff:fe95:c6ec prefixlen 64 scopeid 0x20
    乙醚70:6c:05:95:C6:EC txqueuelen 1000 (以太网)
    RX 数据包0字节0 (0.0B)
    RX 错误0丢弃0溢出0帧0
    TX 数据包34字节6380 (6.2 KiB)
    TX 错误0丢弃0溢出0载波0冲突0

    LO:flags=73 MTU 65536
    iNet 127.0.0.1网络掩码255.0.0.0
    inet6 :: 1 prefixlen 128 scopeid 0x10
    循环 txqueuelen 1000 (本地回送)
    RX 数据包92字节7648 (7.4 KiB)
    RX 错误0丢弃0溢出0帧0
    TX 数据包92字节7648 (7.4 KiB)
    TX 错误0丢弃0溢出0载波0冲突0

    MAIN_mcan0:标志=128 MTU 16
    UNSPEC 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-0xqueuelen 10 (UNSPEC)
    RX 数据包0字节0 (0.0B)
    RX 错误0丢弃0溢出0帧0
    TX 数据包0字节0 (0.0B)
    TX 错误0丢弃0溢出0载波0冲突0
    器件中断172

    MAIN_mcan3:标志=128 MTU 16
    UNSPEC 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-0xqueuelen 10 (UNSPEC)
    RX 数据包0字节0 (0.0B)
    RX 错误0丢弃0溢出0帧0
    TX 数据包0字节0 (0.0B)
    TX 错误0丢弃0溢出0载波0冲突0
    器件中断175

    mcu_mcan0:标志=128 MTU 16
    UNSPEC 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-0xqueuelen 10 (UNSPEC)
    RX 数据包0字节0 (0.0B)
    RX 错误0丢弃0溢出0帧0
    TX 数据包0字节0 (0.0B)
    TX 错误0丢弃0溢出0载波0冲突0
    器件中断173

    mcu_mcan1:标志=128 MTU 16
    UNSPEC 00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-00-0xqueuelen 10 (UNSPEC)
    RX 数据包0字节0 (0.0B)
    RX 错误0丢弃0溢出0帧0
    TX 数据包0字节0 (0.0B)
    TX 错误0丢弃0溢出0载波0冲突0
    器件中断174

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

    你好,柳

    很高兴我们可以解决 MCAN 问题!

    对于 USB 问题、如果尚未创建新的 E2E 主题、请创建该主题。

    此致、

    大沼市

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

    你好、Takuma、

    我提出了 USB 问题。

    具体情况如下。

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1349382/j7200xsomxevm-processor-sdk-j7200-j721s2xsomxevm-all-usb-port-is-not-work

    谢谢你。

    此致、

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

    你好,柳

    理解、感谢您创建新主题。 我的同事将在新创建的主题帖上为您提供帮助。

    此致、

    大沼市