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.

Linux/TDA2EG: vision SDK 3.02 with earlyboot-change kernel .config issue

Expert 1615 points

Part Number: TDA2EG

Tool/software: Linux

Hi

I have configured earlyboot and now can execute to root.


The kernel's .config file has been modified due to system requirements.


Then use the make kernel_menuconfig  to compile.


However, I discovered that remoteproce, which was originally started in more than one second,


After modifying .config, it will delay many seconds.


Which one of the .config projects is causing this?

the link below is my ttl log and .config,

left side is original,right side is after modified,

https://www.diffnow.com/?report=xr53z 

https://www.diffnow.com/?report=vogsx

  • Hi,

    From your logs I notice that you are building Vision-SDK with OPENVX_INCLUDE=yes, this is not supported with early-boot and late-attach. Please set OPENVX_INCLUDE=no (file apps/configs/tda2ex_evm_linux_all/cfg.mk) and run a clean build.

    From the kernel config attached, I notice there's no mention of the config, OMAP_REMOTEPROC, REMOTEPROC, FW_LOADER_USER_HELPER, FW_LOADER_USER_HELPER_FALLBACK. All these configs need to be set to 'y', i.e they need to be inbuilt into the kernel image.

    Also, I notice you're running PCIe driver (operating in RC mode), and due to enumeration of PCIe devices, the remote-proc probe could be deferred.

    Regards
    Shravan
  • 嗨,

    我可以問為什麼當我把PCI設置為否,


    使proc探針不會延遲,


    但對於內置模塊,有許多“關於符號module_layout版本的消息不一致”消息

    [7.515312] omap_sham:對符號版本不同意module_layout [7.535383] can_dev:對符號版本不同意
    module_layout
    [確定]已達到目標基本系統。
    [7.554575] omap_aes_driver:對符號版本不同意module_layout [7.561932] omap_aes_driver:對符號版本不同意module_layout [7.573511] omap_wdt:對符號版本
    不同意
    module_layout
    啟動rc.pvr.service ...
    [OK]啟動D-Bus系統消息總線。
    [7.675123] omap_aes_driver:對符號版本
    module_layout不同意
    [7.716899] omap_aes_driver:對符號版本不同意module_layout [7.752969] virtio_ring:對符號版本不同意module_layout
    [7.800442] virtio_ring:對符號版本不同意module_layout [7.856348] virtio_ring:對符號版本不同意module_layout [7.866140] virtio_ring:對符號版本
    不同意
    module_layout
    [7.872969] EXT4-fs(mmcblk0p2):警告:掛載錯誤,建議運行e2fsck
    [7.932603] EXT4-fs(mmcblk0p2):恢復完成
    [7.976298] EXT4-fs(mmcblk0p2):使用有序數據模式裝入文件系統。
    Opts :(null)[8.014813] extcon:不同意符號版本
    module_layout [8.124949] extcon:不同意符號版本
    module_layout [8.131646] pvrsrvkm:不同意符號版本
    module_layout [8.138345] pvrsrvkm:不同意符號版本module_layout
    [8.164931] FAT-fs(mmcblk0p1):卷未正確卸載。有些數據可能已損壞。請運行fsck。
    [8.238088] pvrsrvkm:對符號版本的不同意module_layout
    [8.256539] FAT-fs(mmcblk1p1):未正確卸載卷。有些數據可能已損壞。請運行fsck。
    啟動許可用戶會話...
    啟動登錄服務...
    [8.385918] rproc_boot ================================= =================
    [8.456906] remoteproc0:啟動55020000.ipu
    [8.527166] rproc_fw_boot =================== ===============================
    [8.602934] rproc_fw_boot =============== =============
    [確定]開始允許用戶會話。
    [8.664868] remoteproc0:引導fw圖像dra7-ipu2-fw.xem4,大小為6071476
    [8.769726] rproc_enable_iommu start ============================
    [8.847563] rproc-> has_iommu ========== ==========
    [8.911210] iommu_domain_alloc ====================
    [8.977680] iommu_set_fault_handler ============ ========
    [9.055396] iommu_attach_device1 ====================
    [9.125805] iommu_group_get ============== ======
    [9.183749] group == NULL ====================
    [9.238905] omap-iommu 55082000.mmu:55082000.mmu:version 2.1
    [ 9.304274] iommu_attach_device2 ====================
    [9.337055] rproc-> domain = domain ================== ==
    [9.358827] rproc_get_boot_addr ============================
    [9.387433] rproc_find_rsc_table ============ ================
    [9.413166] crc32 ============================
    [9.433390] rproc_handle_resources ============== ==============
    [9.480658] rproc_find_version_info ============================
    [9.528156] rproc_find_loaded_rsc_table ============================
    [9.571652] rproc_handle_resourcese ================== ==========
    [9.605255] start ============================
    [9.632822] remoteproc0:遠程處理器55020000 .ipu現在運行
    [9.670063] virtio_rpmsg_bus virtio1:rpmsg主機在線
    [9.703663] remoteproc0:已註冊virtio1(類型7)
    [9.731437] virtio_rpmsg_bus virtio1:創建通道rpmsg-proto addr 0x50
    [10.520721] virtio_ring:對符號版本不同意module_layout
    [10.529236] virtio_ring:不同意符號版本
    module_layout [10.562002] virtio_ring:不符合符號版本
    module_layout [10.570542] virtio_ring:不符合符號版本
    module_layout [10.591562] virtio_ring:不符合符號版本
    module_layout [10.624889] virtio_ring:不同意關於符號版本
    module_layout [11.057739] pvrsrvkm:關於符號版本的不同意module_layout
    [確定]已啟動rc.pvr.service。
    [確定]開始登錄服務。
    [確定]在ttyS0上開始Serial Getty。
    [確定]已達到目標登錄提示。
    [確定]達到目標多用戶系統。
    [確定]達到目標圖形界面。
    開始更新關於系統運行級別更改的UTMP ...
    [確定]開始更新關於系統運行級別更改的UTMP。

     

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

    There is a strange phenomenon when I turn on PCI related settings.


    I use lsmod, you can see the module below,


    But I searched for related information and found that


    When modules are built into the kernel,


    lsmod should not see these modules

    And when I turn off the PCI related settings,


    You can't see any module with lsmod.


    This means that the module is indeed built into the kernel,


    or just because of "disagrees about version of symbol module_layout"


    No module was successfully mounted.

    In addition, when the PCI related settings are enabled,


    I observed that the program will run into the "check_version" function of kernel/omap/kernel/module.c,

    But when the PCI related settings are disabled,


    It not run into  the "check_version" function

     

  • Hi,

    From your logs I can see that there is a miss-match between the kernel modules (/lib/modules in the file-system), and the kernel image used (/boot/zImage in the file-system). Please make sure you follow the below steps (please follow the step-by-step instruction is section-3 of VDSK Linux user-guide)

    1. make clean

    2. make linux

    3. make linux_install

    4. make depend

    5. make vision_sdk

    6. Create updated file system tar ball (step-7 of section 3.1 of VisionSDK_Linux_UserGuide.pdf in vision-SDK docs).

    7. mksdboot.sh

    8. early-boot-update.sh

    Regards
    Shravan

  • Hi,
    I found out from make linux that he will initialize the kernel's .config,

    So I always use make kernle_menuconfig to change the .config settings after finishing make linux.

    Is my action like this caused the inconsistency between the kernel and module versions?
  • Hi,

    I've answered the same question on the below thread.

    e2e.ti.com/.../2582547

    Please note this thread is resolved, please create a new thread for any new queries.

    Regards
    Shravan