[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20171129090822.GD32345@graute-opti>
Date: Wed, 29 Nov 2017 10:08:22 +0100
From: Oliver Graute <oliver.graute@...il.com>
To: netdev@...r.kernel.org
Subject: Re: fec driver and two micrel phys
On 29/11/17, Oliver Graute wrote:
> On 28/11/17, Andrew Lunn wrote:
> > On Tue, Nov 28, 2017 at 04:28:15PM +0100, Oliver Graute wrote:
> > > Hello list,
> > >
> > > I try to get two Micrel KSZ8041 Phys working with the fec driver from
> > > Kernel 4.14. But it looks that something with the mii_bus probing is not
> > > working here. I expect the Phys on address 01 and 03. Currently on eth1
> > > I see TX traffic but no RX. On eth0 there is neither nor. (ifconfig)
> > >
> > > [ 51.997034] Micrel KSZ8041 800f0000.ethernet-1:00: attached PHY driver [Micrel KSZ8041] (mii_bus:phy_addr=800f0000.ethernet-1:00, irq=POLL)
> > > [ 52.036719] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
> > > [ 52.621138] Micrel KSZ8041 800f0000.ethernet-1:01: attached PHY driver [Micrel KSZ8041] (mii_bus:phy_addr=800f0000.ethernet-1:01, irq=POLL)
> > > [ 52.649677] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
> > > [ 54.697479] fec 800f4000.ethernet eth1: Link is Up - 100Mbps/Full - flow control off
> > > [ 54.721424] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
> > > [ 59.860693] Micrel KSZ8041 800f0000.ethernet-1:00: attached PHY driver [Micrel KSZ8041] (mii_bus:phy_addr=800f0000.ethernet-1:00, irq=POLL)
> > > [ 59.874298] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
> > > [ 59.980688] Micrel KSZ8041 800f0000.ethernet-1:01: attached PHY driver [Micrel KSZ8041] (mii_bus:phy_addr=800f0000.ethernet-1:01, irq=POLL)
> > > [ 59.994289] IPv6: ADDRCONF(NETDEV_UP): eth1: link is not ready
> > > [ 62.025331] fec 800f4000.ethernet eth1: Link is Up - 100Mbps/Full - flow control off
> > > [ 62.044588] IPv6: ADDRCONF(NETDEV_CHANGE): eth1: link becomes ready
> > >
> > >
> > > On my old setup with an Kernel 4.2 the phys are working. But there I
> > > patched the phy_mask into the old fec code. Because I didn't know how to
> > > do it better by device tree.
> > >
> > > Can someone tell my how to do it right?
> >
> > Hi Oliver
> >
> > Can you show use your device tree? You should be using phy-handle to
> > point to the PHYs on the MDIO bus.
>
> here is my device tree setting (derived from imx28-evk.dts):
>
> &mac0 {
> phy-mode = "rmii";
> pinctrl-names = "default";
> pinctrl-0 = <&mac0_pins_a>;
> phy-reset-gpios = <&gpio4 13 0>;
> phy-reset-duration = <100>;
> status = "okay";
> };
>
> &mac1 {
> phy-mode = "rmii";
> pinctrl-names = "default";
> pinctrl-0 = <&mac1_pins_a>;
> status = "okay";
> };
>
I got it working with the follwing device tree setup and after reading this
http://lists.infradead.org/pipermail/linux-arm-kernel/2015-January/314706.html
&mac0 {
phy-mode = "rmii";
phy-handle = <ðphy0>;
pinctrl-names = "default";
pinctrl-0 = <&mac0_pins_a>;
phy-reset-gpios = <&gpio4 13 0>;
phy-reset-duration = <100>;
status = "okay";
mdio {
#address-cells = <1>;
#size-cells = <0>;
ethphy0: ethernet-phy@1 {
reg = <1>;
};
ethphy1: ethernet-phy@3 {
reg = <3>;
};
};
};
&mac1 {
phy-mode = "rmii";
phy-handle = <ðphy1>;
pinctrl-names = "default";
pinctrl-0 = <&mac1_pins_a>;
status = "okay";
};
Thx for stub me in right direction.
Best regards,
Oliver
Powered by blists - more mailing lists