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.

not work raw ethernet receiving example

Hi everybody,

I try integrate the RecvRawEth() function from ndk_evm6748_bios5_client into ndk_evm6748_bios5_cfgdemo example. After rebuilding w/o any warnings I'm try to debug it. But I can't to see any raw packets which sended from PC into my board. Can you help to me resolve it? Modifed file the cfgdemo.c is attached. Others files from the ndk_evm6748_bios5_cfgdemo example w/o any change.

2783.cfgdemo.zip

Very thanks

  • Nikolay,

    I helped a customer get raw Ethernet going a few months ago.  It is a bit tricky, but fortunately all of this is tracked in the forum.  Please see this thread:

    http://e2e.ti.com/support/embedded/f/355/p/106536/387932.aspx#387932

    Steve

  • Hi Steven,

    I'm corrected the ethernet driver as you written. But none raw packet was not obtained.

    That's what I fixed in the driver

    nimu_eth.c

            /* Set the 'initial' Receive Filter */

            //ptr_pvt_data->pdi.Filter = ETH_PKTFLT_MULTICAST;

            ptr_pvt_data->pdi.Filter = ETH_PKTFLT_ALL;

    ethdriver.c
        ecfg.ModeFlags             = EMAC_CONFIG_MODEFLG_RXOFFLENBLOCK |
                                     EMAC_CONFIG_MODEFLG_RMII |
                                     EMAC_CONFIG_MODEFLG_PASSALL |
                                     EMAC_CONFIG_MODEFLG_PASSCONTROL |
                                     EMAC_CONFIG_MODEFLG_PASSERROR;
    csl_emac.c and csl_mdio.c w/o changes.
    Project source file was previously posted.
    Can you help me solve the this?
    PS: driver based on nsp_1_00_00_09, ndk_2_20_04_26
  • Hi all,

    I'm resolved this problem. In the Windows XP SP2 and upwards the RAW sockets is impossible to create using ordinary winsock. Thus I used the WinPcap library (http://www.winpcap.org) and all work fine!

    Any changes in the nimu_eth.c and ethdriver.c not necessary.