MPC5748G ENET Transmission issue

キャンセル
次の結果を表示 
表示  限定  | 次の代わりに検索 
もしかして: 

MPC5748G ENET Transmission issue

ソリューションへジャンプ
1,188件の閲覧回数
farozeibnejava
Contributor III

Hi,

 

I am having some strange behavior with Ethernet in MPC5748G. i have successfully configured and perform transmission and reception from controller but in TXF interrupt after transmission if i read the status of any transmission buffer descriptor then that specific buffer descriptor somehow becomes locked and status bit (Ready) is never reset to 0 in that buffer descriptor for successive transmission calls even though frame is transmitted successfully on bus.

here is a sample code which causes issue,

if ((TxBufDesc[i].ControlWord0 & 0x80000000u) == 1) // Ready bit
{
    transmission_flag = 1;
}

now if i remove the above given check then successive transmissions are successful and buffer descriptor's Ready bit is reset to 0 by ENET controller.

ラベル(1)
タグ(2)
1 解決策
868件の閲覧回数
PetrS
NXP TechSupport
NXP TechSupport

Hi Danish,

This could be caused by cache. So try to disable the cache at all, or disable caching of the memory areas where TX/RX Buffer descriptors and TX/RX buffers are placed.

BR, Petr

元の投稿で解決策を見る

3 返答(返信)
869件の閲覧回数
PetrS
NXP TechSupport
NXP TechSupport

Hi Danish,

This could be caused by cache. So try to disable the cache at all, or disable caching of the memory areas where TX/RX Buffer descriptors and TX/RX buffers are placed.

BR, Petr

868件の閲覧回数
farozeibnejava
Contributor III

Thanks, disabling Data Cache for region containing Buffers fixed the issue.

868件の閲覧回数
phonghocle
NXP Employee
NXP Employee

Hi Danish,

I'm having the same issue. Could you please tell me how to disable Data Cache for region containing Buffers?

Thanks.

0 件の賞賛
返信