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/TMDSICE3359: ICSS-EMAC interrupt initialisation

Part Number: TMDSICE3359

Tool/software: Linux

Hi,

In the icss-emac , how is the interrupt initialisation done ??  I am receiving a NULL return in the ICSS_EMAC_testInterupptInit ( ) function. 

Thanks

Paramesh

  • I have taken the source code of icss-emac from the following link :-
    processors.wiki.ti.com/.../Processor_SDK_Linux_ICSS-EMAC_User_Space


    Thanks
    Paramesh
  • I am also facing issues regarding building the library files. From where is the library files being accessed ? I have deleted the library files at ./build/arago-tmp-external-linaro-toolchain/work/am57xx_evm-linux-gnueabi/icss-emac-lld/<ver_number>/packages-split/icss-emac-lld/usr/lib this location. But the icss-emac-lld-test application is still working ? From where is the libraries being picked ??



    Thanks
    Paramesh
  • Paramesh,

    The interrupts are being defined in the device tree as described in the wiki here: processors.wiki.ti.com/.../Processor_SDK_Linux_ICSS-EMAC_User_Space

    The device tree with these definitions can be found in the Linux sources of the Linux Processor SDK at 'arch/arm/boot/dts/am335x-pru-uio.dtsi' which is included at the end of the 'arch/arm/boot/dts/am335x-icev2-pru-excl-uio.dts' file. If you make any changes and would like to rebuild the device tree you can use the 'make linux-dtbs' command from the top-level Makefile of the Linux Processor SDK.

    For rebuilding the libraries, I'm a bit confused on your process. One thing that should be noted is that you need to build for the AM335x device instead of the AM57xx devices. The command 'MACHINE=am335x-evm bitbake icss-emac-lld' should be used (instead of am57xx) and the corresponding generated files will be found in am335x-evm folders of the build directory as well.

    Where are you building the library files (on a host computer I am assuming) and how (and where) are you transferring the generated files to your AM335x ICE EVM? From the sound of your question is seems like you are deleting a (newly cross-compiled) library file on your host machine and are expecting your application running on the EVM to stop working.

    Jason Reeder
  • Paramesh,

    I have been informed that the test binary is built with static linking. This means that once built, the only thing needed to run the test binary is the binary itself.

    Also, the icss-emac-lld-test recipe has a dependency on the icss-emac-lld package. So, when you build the test binary it will automatically build the library and then statically link against it while building the test.

    If you would like to modify the library (or the test) you can modify the source code found in the ‘build/work/amxxx_evm-linux…./icss-emc-lld(-test)/<version>/git/' directory and then use the following bitbake flags to force recompile and package:

    MACHINE=am335x-evm bitbake icss-emac-lld(-test) -f -c compile

    MACHINE=am335x-evm bitbake icss-emac-lld(-test)

    Jason Reeder