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.

RTOS/AM5728: Enable promiscuous mode on the DSP EMAC

Part Number: AM5728

Tool/software: TI-RTOS

Hi,

I'm currently trying to enable promiscuous mode on the DSP Ethernet MAC driver. I found some documentation, but it doens't seem to be that up to date. In the document "EthernetMediaAccessController(EMAC)/ManagementDataInput/Output(MDIO)Module" in section "2.10.8PromiscuousReceiveMode" there is some mention to set the RXCAFEN, RXCEFEN, RXCMFEN and RXCSFEN to 1, but I can't fine the according defines in driver version 4.

Additionally I tried to activate it by setting rx_filter to EMAC_PKTFLT_ALL for the emac_config() call, just to realise that this is the implementation:

static EMAC_DRV_ERR_E  EMAC_config_v4(uint32_t port_num,  EMAC_CONFIG_INFO_T *p_config)
{
    return EMAC_DRV_RESULT_OK;
}

I would be grateful if someone could tell me how to enable promiscuous mode on the EMAC Driver v4.

  • Hi,

    You mentioned some info for this and can you clarify what document is it, is it for Keystone I/II device? I looked at the AM57x TRM chapter 24.11 Gigabit Ethernet Switch (GMAC_SW) and I didn't find info.

    The AM57x GMAC driver is V4 and it doesn't support promiscuous mode.

    Regards, Eric
  • The document I am talking about is this. Found it in another thread related to promiscuous mode.

    As for the support of promiscuous mode. There is a nice document in the SDK (pdk_am57xx_1_0_13/packages/ti/drv/emac/docs). It has a nice table EMAC IP features on page 25 and regarding AM572x I see hardware and tested software support.

    EMAC_LLD_SD.pdf

    lding said:


    The AM57x GMAC driver is V4 and it doesn't support promiscuous mode.

    What does mean it is V4? Can I use another version of the EMAC driver or not? If I can use another version how? Is there no software or no hardware support?

  • Hi,

    Sorry my info "the AM57x GMAC driver is V4 and it doesn't support promiscuous mode." was wrong. The AM57X HW and SW supports the promiscuous mode already and it's IP level feature, there is no need to do any software change, it should work as it is.

    There are different versions under pdk_am57xx_1_0_xx\packages\ti\drv\emac\src, corresponding to different hardware. You may look at src_files_common.mk for details. V4 is for "am574x am572x am571x am437x am335x dra72x dra75x dra78x".

    Regards, Eric
  • Hi,

    Thanks a lot for your update, but I still don't know how I enable it. You said it's an IP level feature? If you can tell me how I would activate it for the NDK stack I can lookup the code myself.

    Regards, Andri
  • The issue resolved itself. I had some bug with my receiving task on the EMAC driver level and due to my experiments with the NDK stack I thought it was configured on hardware level. I receive now everything as expected.