1676889_ja-JP

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

1676889_ja-JP

1676889_ja-JP

KSZ9131とiMX 8M Plusのインターフェース

こんにちは、

私たちは、iMX 8M Plus SOC にインターフェースされるデザインの 1 つに ksz9131 phy を使用しています。KSZ9131 phy は SOC の fec MAC にコネクテッドされます。micrel phy ドライバと fec MAC ドライバが適切にロードされています。問題は、OS が起動するたびに、phy が RGMII モードで適切に構成されないことです。phy を動作させるには、OS の起動後に以下のコマンドを実行する必要があります。

ethtool -s eth0 速度 1000 デュプレックス 全二重

上記のコマンドを実行すると、phy が動作を開始します。このコマンドを実行せずに phy を動作させる方法を誰か知っていますか。最善の解決策は何でしょうか?

このコマンドを実行する前と実行後に、PHY のレジスタ ダンプを取得しました。私の理解によれば、レジスタ 0x04 (車載-NEGOTIATION ADVERTISEMENT REGISTER) を値 0x0401 に設定する必要があります。micrel ドライバを使用してこの値を設定しようとしましたが、OS の起動時に反映されません。もっと良い解決策を提案してください。

よろしくお願いします。

i.MX 8M | i.MX 8M ミニ | i.MX 8M ナノRe: Interfacing KSZ9131 to iMX 8M Plus

こんにちは、シャスワスさん。

私は imx8mn で KSZ9131 Phy デバイスを使用しています。ターミナルで ifcoonfig と入力すると最初は表示され、Phy に接続できましたが、uboot で IP アドレスを変更してリセットすると、Phy が表示されなくなり、$ dmesg | grep -i イーサネット で次のプロンプトが表示されます。

fsl_dpa : FSL DPAA イーサネット ドライバ

mdio_bus 30be0000.イーサネット-1:アドレス3のMDIOデバイスが見つかりません

fec 30be0000.イーサネット eth0: 登録済みPHCデバイス0

fec 30be0000.イーサネット eth0: phyに接続できません


あなたの星座と上記のDTSに応じて、あなたに尋ねたいのですが、

FEC と KSZ9131 で使用される電圧はいくらですか (1.8V または 3.3V)?

PHY 機能を実現するためにどの電源電圧が使用されるかを確認するために、ksz9131 と imx8mp 間の接続の回路図を共有していただけますか。


事前に感謝いたします。




Re: Interfacing KSZ9131 to iMX 8M Plusこんにちは。解決策の詳細を教えてCANますか?私も同じ状況です。Re: Interfacing KSZ9131 to iMX 8M Plus問題は解決しました!Re: Interfacing KSZ9131 to iMX 8M Plus

こんにちは、

イーサネット接続にも問題が発生しています。IMX8MP-EVK をベースにしたカスタム ボードにコネクテッドされた唯一の PHY として KSZ9131 を使用しています。

https://github.com/nxp-imx/linux-imx/tree/lf-5.15.yの Linux 5.15.71-lts を使用しています。

以下はデバイス ツリーの構成です。


&eqos {
        status = "disabled";
};

&fec {
	pinctrl-names = "default";
	pinctrl-0 = <&pinctrl_eqos>;
	phy-mode = "rgmii-id";
	phy-handle = <&ethphy1>;
	fsl,magic-packet;
	status = "okay";

	mdio {
		#address-cells = <1>;
		#size-cells = <0>;

		ethphy1: ethernet-phy@0 {
			compatible = "ethernet-phy-ieee802.3-c22";
			reg = <0>;
			reset-gpios = <&gpio1 15 GPIO_ACTIVE_LOW>;
			reset-assert-us = <10000>;
			reset-deassert-us = <50000>;
		};
	};
};

pinctrl_eqos: eqosgrp {
  fsl,pins = <
    MX8MP_IOMUXC_ENET_MDC__ENET_QOS_MDC    0x2
    MX8MP_IOMUXC_ENET_MDIO__ENET_QOS_MDIO  0x2

    MX8MP_IOMUXC_ENET_RD0__ENET_QOS_RGMII_RD0  0x90
    MX8MP_IOMUXC_ENET_RD1__ENET_QOS_RGMII_RD1  0x90
    MX8MP_IOMUXC_ENET_RD2__ENET_QOS_RGMII_RD2  0x90
    MX8MP_IOMUXC_ENET_RD3__ENET_QOS_RGMII_RD3  0x90
    MX8MP_IOMUXC_ENET_RXC__CCM_ENET_QOS_CLOCK_GENERATE_RX_CLK  0x90
    MX8MP_IOMUXC_ENET_RX_CTL__ENET_QOS_RGMII_RX_CTL  0x90

    MX8MP_IOMUXC_ENET_TD0__ENET_QOS_RGMII_TD0  0x16
    MX8MP_IOMUXC_ENET_TD1__ENET_QOS_RGMII_TD1  0x16
    MX8MP_IOMUXC_ENET_TD2__ENET_QOS_RGMII_TD2  0x16
    MX8MP_IOMUXC_ENET_TD3__ENET_QOS_RGMII_TD3  0x16
    MX8MP_IOMUXC_ENET_TX_CTL__ENET_QOS_RGMII_TX_CTL  0x16
    MX8MP_IOMUXC_ENET_TXC__CCM_ENET_QOS_CLOCK_GENERATE_TX_CLK 0x16

    MX8MP_IOMUXC_GPIO1_IO15__GPIO1_IO15  0x10
  >;
};


LED が点滅しているのが CAN 確認でき、ifconfig eth0 up/down で制御できます。

しかし、接続が確立されません。IP アドレスとゲートウェイを手動で設定しても、ネットワーク内のデバイスに ping したりアクセスしたりすることはできません。


 dmesg | grep -i ethernet
[    1.379338] hns3: Hisilicon Ethernet Network Driver for Hip08 Family - version
[    1.413546] igb: Intel(R) Gigabit Ethernet Network Driver
[    2.110231] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    3.259066] fec 30be0000.ethernet: Invalid MAC address: 00:00:00:00:00:00
[    3.265916] fec 30be0000.ethernet: Using random MAC address: 0e:d0:09:5e:f3:8d
[    3.357940] fec 30be0000.ethernet eth0: registered PHC device 0
[    9.012865] Generic PHY 30be0000.ethernet-1:00: attached PHY driver (mii_bus:phy_addr=30be0000.ethernet-1:00, irq=POLL)

 ethtool eth0
Settings for eth0:
        Supported ports: [ TP    MII ]
        Supported link modes:   Not reported
        Supported pause frame use: Symmetric
        Supports auto-negotiation: No
        Supported FEC modes: Not reported
        Advertised link modes:  Not reported
        Advertised pause frame use: Symmetric
        Advertised auto-negotiation: No
        Advertised FEC modes: Not reported
        Speed: 10Mb/s
        Duplex: Half
        Auto-negotiation: off
        Port: MII
        PHYAD: 0
        Transceiver: external
        Supports Wake-on: g
        Wake-on: d
        Link detected: no


どんなご支援でも大変感謝いたします。

よろしくお願いいたします。

シャスワス

IMX8Mプラス

Re: Interfacing KSZ9131 to iMX 8M Plus

こんにちは@vinay_hasyagar

お元気でお過ごしでしょうか。

下記例を参考にしてください。

&イーサネット0 {
ステータス = "正常";
pinctrl-0 = <&ethernet0_rgmii_pins_a>;
pinctrl-1 = <&ethernet0_rgmii_pins_sleep_ a>;
pinctrl-names = "default", "sleep";
phy-mode = "rgmii";
最大速度<1000> =;
phy-handle = <&phy0>;

mdio0 {
#アドレスセル<1> =;
#セルサイズ<0> =;
互換性 = "snps,dwmac-mdio";
phy0: イーサネット-phy@1 {
レジスタ<1> =;
};
};
};

この構成がデバイス ツリー内のイーサネット ノードに対して行われていることを確認してください。

------------------------------ -------------------------------- -------------------------------- -----------------------------
注: この投稿で質問が解決した場合は、「正解」ボタンをクリックしてください。ありがとう!
------------------------------ -------------------------------- -------------------------------- -----------------------------

ありがとう、よろしく。 ドゥルヴィット・ヴァサヴァダ

Re: Interfacing KSZ9131 to iMX 8M Plus

こんにちは、vinay_hasyagarさん

私も同じ問題に直面しています。10 メガビットのリンクを取得し、ブート直後にethtool -s eth0 speed 10 duplex full と入力するまで同じ問題が発生します

問題をどのように解決したかヒントを教えていただけますか?

よろしくお願いします

Re: Interfacing KSZ9131 to iMX 8M Plus
&fec {
pinctrl-names = "default";
pinctrl-0 = <&pinctrl_fec>;
phy-mode = "rgmii-id";
phy-handle = <&ethphy2>;
fsl、マジックパケット;
ステータス = "正常";
 
mdio {
//互換性 = "snps,dwmac-mdio";
#address-cells = <1>;
#size-cells = <0>;
クロック周波数 = <5000000>;
 
ethphy2: イーサネットphy@3 {
Compatible = "イーサネット-Phy-IEEE802.3-C22";
reg = <3>;
eee-broken-1000t;
 
reset-gpios = <&gpio2 24 GPIO_ACTIVE_LOW>;
reset-assert-us = <10000>;
reset-deassert-us = <50000>;
 
txc-skew-ps = <1800>;
rxc-skew-ps = <1800>;
};
};
};

pinctrl_fec: fecgrp {
fsl、pins = <
MX93_PAD_ENET2_MDC__ENET1_MDC 0x57e
MX93_PAD_ENET2_MDIO__ENET1_MDIO 0x57e
MX93_PAD_ENET2_RD0__ENET1_RGMII_RD0 0x57e
MX93_PAD_ENET2_RD1__ENET1_RGMII_RD1 0x57e
MX93_PAD_ENET2_RD2__ENET1_RGMII_RD2 0x57e
MX93_PAD_ENET2_RD3__ENET1_RGMII_RD3 0x57e
MX93_PAD_ENET2_RXC__ENET1_RGMII_RXC 0x5fe
MX93_PAD_ENET2_RX_CTL__ENET1_RGMII_RX_CTL 0x57e
MX93_PAD_ENET2_TD0__ENET1_RGMII_TD0 0x57e
MX93_PAD_ENET2_TD1__ENET1_RGMII_TD1 0x57e
MX93_PAD_ENET2_TD2__ENET1_RGMII_TD2 0x57e
MX93_PAD_ENET2_TD3__ENET1_RGMII_TD3 0x57e
MX93_PAD_ENET2_TXC__ENET1_RGMII_TXC 0x5fe
MX93_PAD_ENET2_TX_CTL__ENET1_RGMII_TX_CTL 0x57e
>;
};



こんにちは、シャスワスさん。

同じ問題を解決する手助けをいただけますか?
どんなご協力でもありがたいです。

よろしくお願いいたします。
ニラヴ

タグ(1)
評価なし
バージョン履歴
最終更新日:
3 時間前
更新者: