[meta-xilinx] 2nd ethernet port not detected
Mike Looijmans
mike.looijmans at topic.nl
Sun May 17 23:49:09 PDT 2015
For the GMII-to-RGMII conversion, we have this in the devicetree (search for
the "ð" label:
https://github.com/topic-embedded-products/linux/blob/topic-miami/arch/arm/boot/dts/topic-miami-florida.dtsi
Apparently the driver needs a "gmii2rgmii-phy-handle" property. Note that the
logic has a hidden internal PHY, which defaults to ID 8, which you'll need to
supply so the driver forwards the right clock settings to it. The external PHY
must have a different ID, so ID 8 may clash with that.
On another note, ID 0 is not a valid PHY ID (it's the broadcast address, so it
will only work if there's only one PHY, but you really should not use it).
On 15-05-15 06:11, Nathan Rossi wrote:
> On Fri, May 15, 2015 at 8:41 AM, Edward Wingate <edwingate8 at gmail.com> wrote:
>> Just to give more infomation on this, ps7_ethernet_0 goes out MDIO to
>> the PHY chip, while ps7_ethernet_1 goes out EMIO to a GMII to RGMII IP
>> block and then to another PHY chip. Both PHY are the Marvell 88E1518.
>> Is my device tree for ethernet_1 incorrect for this hardware
>> configuration?
>
> Hi Edward,
>
> So one thing to note here is that the macb driver might not support
> the GMII->RGMII wrapper, I believe there was some additional code
> paths in the linux-xlnx emacps driver for it and at least one
> additional device tree binding you might need.
>
> https://github.com/Xilinx/linux-xlnx/blob/xlnx_3.14/drivers/net/ethernet/xilinx/xilinx_emacps.c#L2810
>
> (If you need the linux-xlnx emacps driver there was a earlier thread
> where disabling the macb driver was described:
> https://lists.yoctoproject.org/pipermail/meta-xilinx/2015-May/000970.html)
>
>>
>> On Thu, May 14, 2015 at 3:10 PM, Edward Wingate <edwingate8 at gmail.com> wrote:
>>> I have 2 ethernet devices on my custom Zynq board, but Linux only
>>> detects 1 of them.
>>>
>>> [ 1.832276] macb e000b000.ps7-ethernet eth0: Cadence GEM at
>>> 0xe000b000 irq 54 (00:0a:35:00:01:22)
>>> [ 1.841161] macb e000b000.ps7-ethernet eth0: attached PHY driver
>>> [Marvell 88E1510] (mii_bus:phy_addr=e000b000.ps7-eth:00, irq=-1)
>>>
>>> eth0 seems to work fine. I can ssh into the board.
>>> There are no corresponding messages for eth1.
>>>
>>> My device tree for the ethernet devices looks like this:
>>>
>>> ps7_ethernet_0: ps7-ethernet at e000b000 {
>>> phy-handle = <&phy0>;
>>> phy-mode = "rgmii-id";
>>> phy0: phy at 0 {
>>> compatible = "marvell,88e1518";
>>> device_type = "ethernet-phy";
>>> reg = <0>;
>>> } ;
>>> } ;
>>>
>>> ps7_ethernet_1: ps7-ethernet at e000c000 {
>>> phy-handle = <&phy1>;
>>> phy-mode = "rgmii-id";
>>> phy1: phy at 8 {
>>> compatible = "marvell,88e1518";
>>> device_type = "ethernet-phy";
>>> reg = <8>;
>>> } ;
>>> } ;
>
> So I am going to assume here that you are relying on the
> zynq7-base.dtsi from the meta-xilinx layer. If that is the case the
> above bindings will work as expected, however you might have copied
> the following line from one of the other boards where "ps7_ethernet_1:
> ps7-ethernet at e000c000 { compatible = "invalid"; };" that will cause
> the kernel to ignore the ps7_ethernet_1 node entirely so you will need
> to delete that line. That should get the kernel to probe the second
> device.
>
> If your still getting issues with the kernel not probing the device it
> is worth providing the full device tree content to further debug the
> issue.
>
> Regards,
> Nathan
>
>>>
>>> Is putting this information in the device tree all that's needed? The
>>> PHY address of 8 is what is configured in Vivado for the 2nd ethernet
>>> port.
>>>
>>> Thanks for your help.
>> --
>>
Kind regards,
Mike Looijmans
System Expert
TOPIC Embedded Products
Eindhovenseweg 32-C, NL-5683 KH Best
Postbus 440, NL-5680 AK Best
Telefoon: +31 (0) 499 33 69 79
Telefax: +31 (0) 499 33 69 70
E-mail: mike.looijmans at topicproducts.com
Website: www.topicproducts.com
Please consider the environment before printing this e-mail
_______________________________________________
>> meta-xilinx mailing list
>> meta-xilinx at yoctoproject.org
>> https://lists.yoctoproject.org/listinfo/meta-xilinx
More information about the meta-xilinx
mailing list