こんにちは、エンジニアの皆さん
S32K388評価ボード上のRGMII GMAC0イーサネット インターフェイスをテストしているときに問題が発生しています。割り当てられた IP アドレスに正常に ping できません。標準の lwIP の例 (GMAC1 を使用) から始めて、 PINS の多重化を変更して信号を GMAC0 にルーティングし、それに応じてCLOCKを更新し、デバイスの初期化関数を調整し、Mcal コンポーネント タブのプラットフォーム を変更しました。これらの変更にもかかわらず、リンクは適切に確立されず、ping の試行は失敗します。
私の変更内容を確認いただくか、添付の zip ファイル (変更されたプロジェクトを含む) を使用して、GMAC0 インターフェースをテストしていただけますか?GMAC0 と GMAC1 の潜在的な構成の違い、PHY 初期化の問題、または lwIP の例における GMAC0 の既知の制限に関する知見があれば、大変助かります。
ご協力ありがとうございました
こんにちは@vinmotion 、
ご覧のとおり、コードスニペットのすべての行が GMAC0 に関連しているわけではありません。このコードは私のすべての例で使用されており、GMAC0 と GMAC1 を修正します。
よろしくお願いいたします。
パベル
ありがとうございます。しかし、S32k388 で RGMII GMAC0 を使用する場合、デバイスの初期化関数の例を変更すると次のようになることを確認できますか。
/* MUX_7 を手動でバイパスし、GMAC0_RX_CLK は入力ピンから直接導出されます。*/
IP_DCM_GPR->DCMRWF3 |= DCM_GPR_DCMRWF3_MAC_RX_CLK_MUX_BYPASS(1u);
/* MUX_15 を手動でバイパスし、GMAC1_RX_CLK は入力ピンから直接導出されます。*/
IP_DCM_GPR->DCMRWF4 |= DCM_GPR_DCMRWF4_MAC2_RX_CLK_MUX_BYPASS(1u);
/* GMAC1_TX_RMII_CLK ループバックを手動で有効にします。*/
IP_DCM_GPR->DCMRWF2 |= DCM_GPR_DCMRWF2_MAC2_LOOBPACK_CLK_SEL_MASK | DCM_GPR_DCMRWF2_MAC2_TX_RMII_CLK_LPBCK_EN_MASK;
/* GMAC1 を RGMII モードに手動で設定します。*/
IP_DCM_GPR->DCMRWF4 |= DCM_GPR_DCMRWF4_MAC2_CONF_SEL(1u);
よろしくお願いいたします。
こんにちは@vinmotion 、
このクエリはこのThreadの重複であると思われます:
解決済み: S32K388 RGMII GMAC0 イーサネットがpingできない - NXPコミュニティ
よろしくお願いいたします。
パベル