i.mx8, ethernet mac features for AVB / 802.3 / 802.1Qav

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

i.mx8, ethernet mac features for AVB / 802.3 / 802.1Qav

1,458 Views
dav1
Contributor V

Hi,

In the i.MX 8M Mini Applications Processor Reference Manual, there is a bit of info around the "Ethernet MAC core", but I can't seem to find the details on some of the bullets listed. Would be great with some input from NXP on how these are designed / aimed to be utilized for AVB use-cases.

Just listing a few from the ref manual below. Feel free to comment:

  • A unified DMA, internal to the ENET module, optimizes data transfer between the ENET core and the SoC, and supports an enhanced buffer descriptor programming model to support IEEE 1588 functionality.

    • is this functionality implemented or documented somewhere?
  • 802.1Qav features -> AVB endpoint talker and listener support
    • does this mean we can offload depacketization of the AVB ethernet frame -> IEEE 1722 packet?
    • preferably also parsing the IEC 61883 header so the data-frame address can be put in a DMA automatically!?
  • Support for arbitration between different priority traffic (for example, AVB class A, class B, and non-AVB)

    • any driver support (in the linux kernel) for this?
    • can we assume that there could be separate IRQ's fired depending on traffic type?

Thanks

David

Tags (3)
0 Kudos
4 Replies

1,251 Views
AldoG
NXP TechSupport
NXP TechSupport

Hello,

 

>A unified DMA, internal to the ENET module, optimizes data transfer between the ENET core and the SoC, and supports an enhanced buffer descriptor programming model to support IEEE 1588 functionality.

-> Is this functionality implemented or documented somewhere?

 

yes, this function is implemented. 

 

->802.1Qav features -> AVB endpoint talker and listener support

->Does this mean we can offload depacketization of the AVB ethernet frame -> IEEE 1722 packet?

->Preferably also parsing the IEC 61883 header so the data-frame address can be put in a DMA automatically!?

 

HW doesn't support 1722 frame offload just think it is normal vlan frame. 

 

->Support for arbitration between different priority traffic (for example, AVB class A, class B, and non-AVB)

->Any driver support (in the linux kernel) for this?

->Can we assume that there could be separate IRQ's fired depending on traffic type?

 

Priority is done by HW based on cbs algorithm

 

Hope this helps

Regards,

Aldo.

0 Kudos

1,251 Views
dav1
Contributor V

Hi nxf46838‌ / team NXP,

Thx for reply, would be great with some clarifications, please see below:

>A unified DMA, internal to the ENET module, optimizes data transfer between the ENET core and the SoC, and supports an enhanced buffer descriptor programming model to support IEEE 1588 functionality.

-> Is this functionality implemented or documented somewhere?

 

yes, this function is implemented. 

please guide us to where we can find the implementation. Is it bare-metal or linux!?

It's not in the official NXP kernel afaik.

->802.1Qav features -> AVB endpoint talker and listener support

->Does this mean we can offload depacketization of the AVB ethernet frame -> IEEE 1722 packet?

->Preferably also parsing the IEC 61883 header so the data-frame address can be put in a DMA automatically!?

 

HW doesn't support 1722 frame offload just think it is normal vlan frame. 

Who can help comment on how this hw-feature is supposed to be used?

if it says "endpoint listener support" in the TRM, you'd assume it means frame offloading.

(correct me if I'm wrong, but 802.1Qav & VLAN frames only are two different things)

->Support for arbitration between different priority traffic (for example, AVB class A, class B, and non-AVB)

->Any driver support (in the linux kernel) for this?

->Can we assume that there could be separate IRQ's fired depending on traffic type?

 

Priority is done by HW based on cbs algorithm

Any reference implementations available? I'd like to understand on how we can filter class-A traffic only into a separate process queue.

thanks

/David

0 Kudos

1,251 Views
AldoG
NXP TechSupport
NXP TechSupport

Hello

 

You may refer to the i.MX Reference Manual of the BSP version you may use, section 4.2 ENET IEEE-1588.
Please download the documentation from here:
https://www.nxp.com/design/i.mx-developer-resources/i.mx-software-and-development-tools:IMX-SW

 

Also, for NXP'S Audio Video Bridging (AVB) software is not provided in our BSP it is provided through NXP Professional Services, please submit your form here:
https://www.nxp.com/design/software/embedded-software/audio-video-bridging-software:AVB-SOFTWARE

 

Hope this helps,

Best regards,
Aldo.

0 Kudos

1,251 Views
dav1
Contributor V

Hi Aldo,

I've checked the docs but nothing in there mentioning the 802.1Qav features for off-loading the cpu to do endpoint talker ("packetization") and listener ("dequeuing").

0 Kudos