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.

TDA4VM-Q1: pci-epf-test can't work

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

Tool/software:

TDA4VM sdk11. 

    I am trying to verify pcie system of TDA4VH on TDA4VH EVM, refer following link to test PCIE

(+) PROCESSOR-SDK-J721E: pci_epf_test pci_epf_test.1: Failed to get private DMA rx channel. Falling back to generic one - Processors forum - Processors - TI E2E support forums

but at this step:

--------------------------

root@j721e-evm:/sys/kernel/config/pci_ep# ls functions/pci_epf_test/pf1
ls: cannot access 'functions/pci_epf_test/pf1': No such file or directory
root@j721e-evm:/sys/kernel/config/pci_ep#
root@j721e-evm:/sys/kernel/config/pci_ep#
root@j721e-evm:/sys/kernel/config/pci_ep# ls functions/pci_epf_test/func1/
baseclass_code deviceid msi_interrupts primary revid subclass_code subsys_vendor_id
cache_line_size interrupt_pin msix_interrupts progif_code secondary subsys_id vendorid
root@j721e-evm:/sys/kernel/config/pci_ep# ls /sys/bus/pci-epf/drivers
pci_epf_test
root@j721e-evm:/sys/kernel/config/pci_ep#
root@j721e-evm:/sys/kernel/config/pci_ep# mount -t configfs none /sys/kernel/config
root@j721e-evm:/sys/kernel/config/pci_ep# cd /sys/kernel/config/pci_ep/
root@j721e-evm:/sys/kernel/config/pci_ep# mkdir functions/pci_epf_test/func1
mkdir: cannot create directory 'functions/pci_epf_test/func1': File exists
root@j721e-evm:/sys/kernel/config/pci_ep# ls functions/pci_epf_test/func1
baseclass_code deviceid msi_interrupts primary revid subclass_code subsys_vendor_id
cache_line_size interrupt_pin msix_interrupts progif_code secondary subsys_id vendorid
root@j721e-evm:/sys/kernel/config/pci_ep# cat functions/pci_epf_test/func1/vendorid
0x104c
root@j721e-evm:/sys/kernel/config/pci_ep# cat functions/pci_epf_test/func1/interrupt_pin
0x0001
root@j721e-evm:/sys/kernel/config/pci_ep# echo 0x104c > functions/pci_epf_test/func1/vendorid
root@j721e-evm:/sys/kernel/config/pci_ep# echo 0xb00d > functions/pci_epf_test/func1/deviceid
root@j721e-evm:/sys/kernel/config/pci_ep# echo 2 > functions/pci_epf_test/func1/msi_interrupts
root@j721e-evm:/sys/kernel/config/pci_ep# echo 2 > functions/pci_epf_test/func1/msix_interrupts
root@j721e-evm:/sys/kernel/config/pci_ep# ln -s functions/pci_epf_test/func1 controllers/2900000.pcie-ep/
ln: failed to create symbolic link 'controllers/2900000.pcie-ep/': No such file or directory
root@j721e-evm:/sys/kernel/config/pci_ep# ln -s functions/pci_epf_test/func1 controllers/2900000.pcie-ep
ln: failed to create symbolic link 'controllers/2900000.pcie-ep': Operation not permitted
root@j721e-evm:/sys/kernel/config/pci_ep#
root@j721e-evm:/sys/kernel/config/pci_ep#

    # Binding the physical fn1 to the controller
   ln -s functions/pci_epf_test/pf1 controllers/2900000.pcie-ep

-------------------------------

it report error:

root@j721e-evm:/sys/kernel/config/pci_ep#
root@j721e-evm:/sys/kernel/config/pci_ep# ln -s functions/pci_epf_test/func1 controllers/29000000.pcie_ep
ln: failed to create symbolic link 'controllers/29000000.pcie_ep': Operation not permitted
root@j721e-evm:/sys/kernel/config/pci_ep#

---------------------------

how to make this work?

Thanks

   Semon

  • sorry I made a mistake, not to set the pcie to end-point mode, 

    but now I already change to end-point mode, 

    but has error yet

    root@j721e-evm:/sys/kernel/config/pci_ep# echo 0x104c > functions/pci_epf_test/pf1/vendorid
    root@j721e-evm:/sys/kernel/config/pci_ep# echo 0xb00d > functions/pci_epf_test/pf1/deviceid
    root@j721e-evm:/sys/kernel/config/pci_ep# echo 16 > functions/pci_epf_test/pf1/msi_interrupts
    root@j721e-evm:/sys/kernel/config/pci_ep# echo 16 > functions/pci_epf_test/pf1/msix_interrupts
    root@j721e-evm:/sys/kernel/config/pci_ep# ln -s functions/pci_epf_test/vf1 functions/pci_epf_test/pf1
    root@j721e-evm:/sys/kernel/config/pci_ep# ln -s functions/pci_epf_test/vf2 functions/pci_epf_test/pf1
    root@j721e-evm:/sys/kernel/config/pci_ep# ln -s functions/pci_epf_test/pf1 controllers/2910000.pcie-ep
    [ 396.483339] pci_epf_test pci_epf_test.2: Failed to get private DMA rx channel. Falling back to generic one
    root@j721e-evm:/sys/kernel/config/pci_ep#
    root@j721e-evm:/sys/kernel/config/pci_ep# echo 1 > controllers/2900000.pcie-ep/start
    -sh: controllers/2900000.pcie-ep/start: No such file or directory
    root@j721e-evm:/sys/kernel/config/pci_ep# echo 1 > controllers/2910000.pcie-ep/start
    root@j721e-evm:/sys/kernel/config/pci_ep#
    root@j721e-evm:/sys/kernel/config/pci_ep#
    root@j721e-evm:/sys/kernel/config/pci_ep#
    root@j721e-evm:/sys/kernel/config/pci_ep# ./pcitest -h
    -sh: ./pcitest: No such file or directory
    root@j721e-evm:/sys/kernel/config/pci_ep#
    root@j721e-evm:/sys/kernel/config/pci_ep# ls
    controllers functions
    root@j721e-evm:/sys/kernel/config/pci_ep# cd controllers/
    root@j721e-evm:/sys/kernel/config/pci_ep/controllers# ls
    2910000.pcie-ep
    root@j721e-evm:/sys/kernel/config/pci_ep/controllers# cd 2910000.pcie-ep/
    root@j721e-evm:/sys/kernel/config/pci_ep/controllers/2910000.pcie-ep# ls
    pf1 start
    root@j721e-evm:/sys/kernel/config/pci_ep/controllers/2910000.pcie-ep# ls -al
    total 0
    drwxr-xr-x 2 root root 0 Mar 5 20:02 .
    drwxr-xr-x 3 root root 0 Jan 1 1970 ..
    lrwxrwxrwx 1 root root 0 Mar 5 20:02 pf1 -> ../../../pci_ep/functions/pci_epf_test/pf1
    -rw-r--r-- 1 root root 4096 Mar 5 20:02 start
    root@j721e-evm:/sys/kernel/config/pci_ep/controllers/2910000.pcie-ep# echo start
    start
    root@j721e-evm:/sys/kernel/config/pci_ep/controllers/2910000.pcie-ep# cat start
    1
    root@j721e-evm:/sys/kernel/config/pci_ep/controllers/2910000.pcie-ep# cd ..

    and can't find the pcie device in /dev/

    -------------------------------

    ---------------------------

    how to fix it?

    Regards

       Semon

  • Hi Semon,

    [ 396.483339] pci_epf_test pci_epf_test.2: Failed to get private DMA rx channel. Falling back to generic one

    This error is fine. This is just saying that the PCIe controller itself does not have a built-in DMA channel, so the PCIe example driver is falling back to the generic system DMA channel.

    and can't find the pcie device in /dev/

    PCIe device will be found on the second TDA4VM configured as RC. The PCie EP/RC is a demo that requires two different EVMs.

    Regards,

    Takuma