How to start the ENET module on IMX8QM?

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

How to start the ENET module on IMX8QM?

1,021 Views
alex_froissard
Contributor I

Hello,

I try to start the ENET moduleon the IMX8QM but so far I didn't arrive to send a packet.

I start the power of the module with sc_pm_set_resource_power_mode(SC_IPC_CH, SC_R_ENET_0, SC_PM_PW_MODE_ON);

then I start the clock SC_PM_CLK_BYPASS, SC_PM_CLK_MISC0 and SC_PM_CLK_PER.

I initialize 2 buffer descriptor of Tx and Rx.

I initialize the register ECR, TFWR, MRBR, RDSR, TDSR and RCR (see code attach)

And finally I put the field READY of the TxBD to 1 so start the transmission.

But after that nothing happen, I add a loop that wait the READY field of TxBD to come back to 0 (end of transmission) but it never happen.

I don't know what I forget to initialize to make sure the transmission start.

Best regards

Alexandre

Tags (2)
0 Kudos
1 Reply

958 Views
igorpadykov
NXP Employee
NXP Employee

Hi Alexandre

one can check sect.4.4 Fast Ethernet Controller (FEC) attached Linux Manual

and linux driver sources:

fec_main.c\freescale\ethernet\net\drivers - linux-imx - i.MX Linux kernel 

imx8qm-mek.dts

imx8qm-mek.dts\freescale\dts\boot\arm64\arch - linux-imx - i.MX Linux kernel 

Best regards
igor
-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos