TDA4VM: LPM

Part Number: TDA4VM
Other Parts Discussed in Thread: TDA4VH,

Tool/software:

This is the question I asked before. has been resolved. But I discovered a new problem.

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1453589/tda4vm-tda4-low-power-mode

R5 log is normal。

MCU only app: Inside MCU ONLY task!
MCU only app: Disabling MAXT_OUTRG_EN for TMPSENS1:4 in MAIN domain!
MCU only app: STATE INFO :: CURRENTLY IN ACTIVE MODE!
MCU only app: LED LD5 should be ON
MCU only app: Please measure TP133 and TP134!
MCU only app: Expected values in ACTIVE mode:
TP133: HIGH
TP134: HIGH
MCU only app: Kindly unload Remoteproc modules from Linux. Type these commands in Linux CMD:
modprobe -r ti_k3_r5_remoteproc
modprobe -r ti_k3_dsp_remoteproc
MCU only app: After modules have been removed, press 1 and enter

There is an abnormal log when linux starts. But you can finally log in. 

1.145418] pca953x 4-0020: using no AI
[ 1.172306] omap_i2c 2060000.i2c: bus 4 rev0.12 at 400 kHz
[ 1.178025] ti-sci-intr 42200000.interrupt-controller: Interrupt Router 137 domain created
[ 1.186557] ti-sci-intr bus@100000:interrupt-controller@a00000: Interrupt Router 131 domain created
[ 1.195887] ti-sci-intr 310e0000.interrupt-controller: Interrupt Router 213 domain created
[ 1.204482] ti-sci-inta 33d00000.interrupt-controller: Interrupt Aggregator domain 209 created
[ 1.215177] ------------[ cut here ]------------
[ 1.219915] wiz bus@100000:wiz@5000000: Unable to create SERDES platform device
[ 1.227409] WARNING: CPU: 0 PID: 38 at /drivers/phy/ti/phy-j721e-wiz.c:1624 wiz_probe+0xd10/0xe6c
[ 1.236491] Modules linked in:
[ 1.239607] CPU: 0 PID: 38 Comm: kworker/u4:2 Not tainted 6.6.32-ti-gdb8871293143-dirty #1
[ 1.248052] Hardware name: Texas Instruments J721e EVM (DT)
[ 1.253741] Workqueue: events_unbound deferred_probe_work_func
[ 1.259703] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 1.266815] pc : wiz_probe+0xd10/0xe6c
[ 1.270641] lr : wiz_probe+0xd10/0xe6c
[ 1.274465] sp : ffff8000817dba80
[ 1.277844] x29: ffff8000817dbb40 x28: ffff00085f809330 x27: 0000000000000001
[ 1.285136] x26: ffff800080cac470 x25: 0000000000000002 x24: 0000000000000002
[ 1.292428] x23: 0000000000000000 x22: ffff00080111f8c8 x21: ffff00080038d010
[ 1.299720] x20: ffff00080111f880 x19: 0000000000000000 x18: 0000000000000006
[ 1.307011] x17: 766564206d726f66 x16: 74616c7020534544 x15: 5245532065746165
[ 1.314302] x14: 7263206f7420656c x13: ffff8000812bea58 x12: 0000000000000363
[ 1.321593] x11: 0000000000000121 x10: ffff800081316a58 x9 : ffff8000812bea58
[ 1.328885] x8 : 00000000ffffefff x7 : ffff800081316a58 x6 : 80000000fffff000
[ 1.336176] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
[ 1.343467] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff000800175580
[ 1.350758] Call trace:
[ 1.353249] wiz_probe+0xd10/0xe6c
[ 1.356719] platform_probe+0x68/0xc4
[ 1.360456] really_probe+0x148/0x2b0
[ 1.364190] __driver_probe_device+0x78/0x12c
[ 1.368636] driver_probe_device+0xd8/0x15c
[ 1.372904] __device_attach_driver+0xb8/0x134
[ 1.377438] bus_for_each_drv+0x88/0xe8
[ 1.381352] __device_attach+0xa0/0x190
[ 1.385264] device_initial_probe+0x14/0x20
[ 1.389532] bus_probe_device+0xac/0xb0
[ 1.393446] deferred_probe_work_func+0x88/0xc0
[ 1.398071] process_one_work+0x138/0x248
[ 1.402166] worker_thread+0x320/0x438
[ 1.405991] kthread+0x110/0x114
[ 1.409283] ret_from_fork+0x10/0x20
[ 1.412931] ---[ end trace 0000000000000000 ]---
[ 1.417675] wiz: probe of bus@100000:wiz@5000000 failed with error -12
[ 1.426560] ------------[ cut here ]------------
[ 1.431301] wiz bus@100000:wiz@5010000: Unable to create SERDES platform device
[ 1.438787] WARNING: CPU: 0 PID: 38 at /drivers/phy/ti/phy-j721e-wiz.c:1624 wiz_probe+0xd10/0xe6c
[ 1.447864] Modules linked in:
[ 1.450979] CPU: 0 PID: 38 Comm: kworker/u4:2 Tainted: G W 6.6.32-ti-gdb8871293143-dirty #1
[ 1.460934] Hardware name: Texas Instruments J721e EVM (DT)
[ 1.466623] Workqueue: events_unbound deferred_probe_work_func
[ 1.472584] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 1.479695] pc : wiz_probe+0xd10/0xe6c
[ 1.483521] lr : wiz_probe+0xd10/0xe6c
[ 1.487346] sp : ffff8000817dba80
[ 1.490724] x29: ffff8000817dbb40 x28: ffff00085f80b190 x27: 0000000000000001
[ 1.498016] x26: ffff800080cac470 x25: 0000000000000002 x24: 0000000000000002
[ 1.505308] x23: 0000000000000000 x22: ffff00080111f8c8 x21: ffff00080038d410
[ 1.512599] x20: ffff00080111f880 x19: 0000000000000000 x18: 0000000000000006
[ 1.519890] x17: 766564206d726f66 x16: 74616c7020534544 x15: 5245532065746165
[ 1.527182] x14: 7263206f7420656c x13: ffff8000812bea58 x12: 00000000000003d8
[ 1.534473] x11: 0000000000000148 x10: ffff800081316a58 x9 : ffff8000812bea58
[ 1.541765] x8 : 00000000ffffefff x7 : ffff800081316a58 x6 : 80000000fffff000
[ 1.549056] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
[ 1.556348] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff000800175580
[ 1.563639] Call trace:
[ 1.566130] wiz_probe+0xd10/0xe6c
[ 1.569600] platform_probe+0x68/0xc4
[ 1.573335] really_probe+0x148/0x2b0
[ 1.577070] __driver_probe_device+0x78/0x12c
[ 1.581516] driver_probe_device+0xd8/0x15c
[ 1.585783] __device_attach_driver+0xb8/0x134
[ 1.590318] bus_for_each_drv+0x88/0xe8
[ 1.594232] __device_attach+0xa0/0x190
[ 1.598144] device_initial_probe+0x14/0x20
[ 1.602412] bus_probe_device+0xac/0xb0
[ 1.606326] deferred_probe_work_func+0x88/0xc0
[ 1.610951] process_one_work+0x138/0x248
[ 1.615044] worker_thread+0x320/0x438
[ 1.618869] kthread+0x110/0x114
[ 1.622161] ret_from_fork+0x10/0x20
[ 1.625808] ---[ end trace 0000000000000000 ]---
[ 1.630602] wiz: probe of bus@100000:wiz@5010000 failed with error -12
[ 1.639447] ------------[ cut here ]------------
[ 1.644186] wiz bus@100000:wiz@5020000: Unable to create SERDES platform device
[ 1.651673] WARNING: CPU: 0 PID: 38 at /drivers/phy/ti/phy-j721e-wiz.c:1624 wiz_probe+0xd10/0xe6c
[ 1.660752] Modules linked in:
[ 1.663867] CPU: 0 PID: 38 Comm: kworker/u4:2 Tainted: G W 6.6.32-ti-gdb8871293143-dirty #1
[ 1.673821] Hardware name: Texas Instruments J721e EVM (DT)
[ 1.679510] Workqueue: events_unbound deferred_probe_work_func
[ 1.685472] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[ 1.692583] pc : wiz_probe+0xd10/0xe6c
[ 1.696409] lr : wiz_probe+0xd10/0xe6c
[ 1.700234] sp : ffff8000817dba80
[ 1.703612] x29: ffff8000817dbb40 x28: ffff00085f80cff0 x27: 0000000000000001
[ 1.710904] x26: ffff800080cac470 x25: 0000000000000002 x24: 0000000000000002
[ 1.718195] x23: 0000000000000000 x22: ffff00080111f8c8 x21: ffff00080038d810
[ 1.725487] x20: ffff00080111f880 x19: 0000000000000000 x18: 0000000000000006
[ 1.732778] x17: 766564206d726f66 x16: 74616c7020534544 x15: 5245532065746165
[ 1.740069] x14: 7263206f7420656c x13: ffff8000812bea58 x12: 000000000000044d
[ 1.747360] x11: 000000000000016f x10: ffff800081316a58 x9 : ffff8000812bea58
[ 1.754652] x8 : 00000000ffffefff x7 : ffff800081316a58 x6 : 80000000fffff000
[ 1.761944] x5 : 0000000000000000 x4 : 0000000000000000 x3 : 0000000000000000
[ 1.769235] x2 : 0000000000000000 x1 : 0000000000000000 x0 : ffff000800175580
[ 1.776526] Call trace:
[ 1.779016] wiz_probe+0xd10/0xe6c
[ 1.782486] platform_probe+0x68/0xc4
[ 1.786222] really_probe+0x148/0x2b0
[ 1.789957] __driver_probe_device+0x78/0x12c
[ 1.794402] driver_probe_device+0xd8/0x15c
[ 1.798670] __device_attach_driver+0xb8/0x134
[ 1.803204] bus_for_each_drv+0x88/0xe8
[ 1.807118] __device_attach+0xa0/0x190
[ 1.811031] device_initial_probe+0x14/0x20
[ 1.815299] bus_probe_device+0xac/0xb0
[ 1.819213] deferred_probe_work_func+0x88/0xc0
[ 1.823838] process_one_work+0x138/0x248
[ 1.827931] worker_thread+0x320/0x438
[ 1.831756] kthread+0x110/0x114
[ 1.835048] ret_from_fork+0x10/0x20
[ 1.838695] ---[ end trace 0000000000000000 ]---
[ 1.843488] wiz: probe of bus@100000:wiz@5020000 failed with error -12
[ 1.852345] j721e-pcie 2900000.pcie: host bridge /bus@100000/pcie@2900000 ranges:
[ 1.860016] j721e-pcie 2900000.pcie: IO 0x0010001000..0x0010010fff -> 0x0010001000
[ 1.868293] j721e-pcie 2900000.pcie: MEM 0x0010011000..0x0017ffffff -> 0x0010011000
[ 1.876569] j721e-pcie 2900000.pcie: IB MEM 0x0000000000..0xffffffffffff -> 0x0000000000
[ 1.885755] j721e-pcie 2910000.pcie: host bridge /bus@100000/pcie@2910000 ranges:
[ 1.893479] j721e-pcie 2910000.pcie: IO 0x0018001000..0x0018010fff -> 0x0018001000
[ 1.901760] j721e-pcie 2910000.pcie: MEM 0x0018011000..0x001fffffff -> 0x0018011000
[ 1.910037] j721e-pcie 2910000.pcie: IB MEM 0x0000000000..0xffffffffffff -> 0x0000000000
[ 1.918926] j721e-pcie 2920000.pcie: host bridge /bus@100000/pcie@2920000 ranges:
[ 1.926631] j721e-pcie 2920000.pcie: IO 0x4400001000..0x4400010fff -> 0x0000001000

I have compiled the module.Please tell me what is the reason for these errors.

root@j721e-evm:/opt/edgeai-gst-apps# ls /lib/modules/6.6.32-gdb8871293143-dirty/
build modules.alias.bin modules.builtin.bin modules.dep.bin modules.softdep
kernel modules.builtin modules.builtin.modinfo modules.devname modules.symbols
modules.alias modules.builtin.alias.bin modules.dep modules.order modules.symbols.bin

  • Hi Wang,

    Could you disable all the instances of wiz in Linux dts?

    &serdes_wiz3 {

    status = "disabled";

    };

    - Keerthy

  • 1.

    2.

    make DTC_FLAGS=-@ ARCH=arm64 CROSS_COMPILE="$CROSS_COMPILE_64" ti/k3-j721e-common-proc-board.dtb

    3.

    cp arch/arm64/boot/dts/ti/k3-j721e-common-proc-board.dtb ../prebuilt-images/base-board.dtb

    4.

    ./constructappimageshlos.sh Generating atf_optee image
    Generating atf_optee image
    WARNING: The runtime version supported by this application is unavailable.
    Using default runtime: v4.0.30319
    Parsing the input object file, /home/edward/ti-processor-sdk-rtos-j721e-evm-10_00_00_05/mcusw/mcuss_demos/boot_app_mcu_rtos/main_domain_apps/scripts/hlos/../../binary/bin/j721e_evm/atf_optee.elf.
    File conversion complete!
    Number of Input Files 1

    Generating tidtb_linux image
    WARNING: The runtime version supported by this application is unavailable.
    Using default runtime: v4.0.30319
    Parsing the input object file, /home/edward/ti-processor-sdk-rtos-j721e-evm-10_00_00_05/mcusw/mcuss_demos/boot_app_mcu_rtos/main_domain_apps/scripts/hlos/../../binary/bin/j721e_evm/tidtb_linux.elf.
    File conversion complete!
    Number of Input Files 1

    Generating tikernelimage_linux image
    WARNING: The runtime version supported by this application is unavailable.
    Using default runtime: v4.0.30319
    Parsing the input object file, /home/edward/ti-processor-sdk-rtos-j721e-evm-10_00_00_05/mcusw/mcuss_demos/boot_app_mcu_rtos/main_domain_apps/scripts/hlos/../../binary/bin/j721e_evm/tikernelimage_linux.elf.
    File conversion complete!
    Number of Input Files 1

    5.

    dslite.bat --mode processors -c COM17 -f D:\TDA4\lpm\tidtb_linux.appimage -d 3 -o 1EC0000

    I repeated it twice, but still got the same error.

    In addition, I found that there is no network after Linux starts
    root@j721e-evm:/opt/edgeai-gst-apps# ifconfig
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 90  bytes 6818 (6.6 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 90  bytes 6818 (6.6 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@j721e-evm:/opt/edgeai-gst-apps#
    


  • Hi Wang,

    That's because a number of dependent modules are disabled. Now you no longer see the error messages?

    Best Regards,

    Keerthy 

  • after disable,Still the same error。

    .202784] ------------[ cut here ]------------
    [ 1.207519] wiz bus@100000:wiz@5000000: Unable to create SERDES platform device
    [ 1.215014] WARNING: CPU: 1 PID: 26 at /drivers/phy/ti/phy-j721e-wiz.c:1624 wiz_probe+0xd10/0xe6c
    [ 1.224095] Modules linked in:
    [ 1.227210] CPU: 1 PID: 26 Comm: kworker/u4:1 Not tainted 6.6.32-ti-gdb8871293143-dirty #1
    [ 1.235655] Hardware name: Texas Instruments J721e EVM (DT)
    [ 1.241345] Workqueue: events_unbound deferred_probe_work_func
    [ 1.247307] pstate: 60000005 (nZCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    [ 1.254419] pc : wiz_probe+0xd10/0xe6c
    [ 1.258245] lr : wiz_probe+0xd10/0xe6c
    [ 1.262070] sp : ffff80008160ba80
    [ 1.265448] x29: ffff80008160bb40 x28: ffff00085f809270 x27: 0000000000000001
    [ 1.272741] x26: ffff800080cac470 x25: 0000000000000002 x24: 0000000000000002
    [ 1.280033] x23: 0000000000000000 x22: ffff0008011368c8 x21: ffff00080038d010
    [ 1.287325] x20: ffff000801136880 x19: 0000000000000000 x18: 0000000000000006
    [ 1.294616] x17: 766564206d726f66 x16: 74616c7020534544 x15: 5245532065746165
    [ 1.301908] x14: 7263206f7420656c x13: ffff8000812bea58 x12: 0000000000000363

    What I mean is that the Internet is also unavailable.
  • Hello, 

    Please disable all the serdes_wiz instances in device tree and check. 

    Could you disable all the instances of wiz in Linux dts?

    Best regards,

    Keerthy 

  • Hello,

    I disable serdes_wiz0~4.there are no errors. But the network is still not available.no "eth0"

    root@j721e-evm:/opt/edgeai-gst-apps# ifconfig
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 90  bytes 6818 (6.6 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 90  bytes 6818 (6.6 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    

  • Hi Wang,

    Okay. Ethernet is dependent on serdes_wiz and that is likely to fail. For now Bringing up Linux back is validated with these limitations.

    - Keerthy

  • hello,

    I don't quite understand what you mean. 
    First of all, are there any special instructions for lpm's Linux network?
    I want to know how lpm implements Linux network functions
  • I verified that normal sd boot is no problem. 
    lpm also uses the rootfs of sd and the kernel image is also the same.
    I think the differences may be as follows:

    1.dtb
    Because I found that the startup logs of the two startup methods are somewhat different.
    For example, sd startup will have:
    [    0.000000] OF: reserved mem: 0x00000000e4000000..0x00000000e47fffff (8192 KiB) nomap non-reusable vision-apps-r5f-virtual-eth-queues@e4000000
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000e4800000, size 24 MiB
    [    0.000000] OF: reserved mem: initialized node vision-apps-r5f-virtual-eth-buffers@e4800000, compatible id shared-dma-pool
    [    0.000000] OF: reserved mem: 0x00000000e4800000..0x00000000e5ffffff (24576 KiB) nomap non-reusable vision-apps-r5f-virtual-eth-buffers@e4800000

    This is related to the network, and lpm does not have these

    2.r5 mcu
    I read the documentation and said that the network implementation is in the r5 core, 
    and other cores access the network as clients, so could it be caused by the image of the r5 core?
  • Hello,

    Do you plan to use the network post LPM mode? If yes then I will check with development team. The testing was limited to booting Linux post LPM mode.

    - Keerthy

  • Hello,

    YES, I wang to use network in LPM. 

    Just like using the sd card normally. Everything is normal.
  • Hi,

    Understood. This will need more time. Seems like this was not considered & intent was to bring up Linux.
    I will check internally and raise an internal ticket to follow up with the development team.

    - Keerthy

  • Hi,

    Excuse me, is there any progress?
  • Hi Wang,

    This is still being investigated. As the intent was to get the Linux up and running, networking was disabled.
    So this will only be fixed in the upcoming releases. There are multiple software components that will need to be looked at.

    I will update in the next couple of weeks on when this can be fixed.

    - Keerthy

  • Thank you for your reply, I will continue to pay attention to this issue. Also, I want to ask, I am using TDA4VM, does TDA4VH have the same problem?

  • Also, I want to ask, I am using TDA4VM, does TDA4VH have the same problem?

    Right now the MCU_ONLY mode software support exists only for TDA4VM. TDA4VH there is no support in software.

    - Keerthy

  • I will continue to wait for the release of a new release package to solve this problem. Hope it can be resolved soon.

  • Thanks Wang. I will close this but please feel to free to ask if any other follow ups are needed.