Q about Ethernet - GlobalScale DreamPlug + FreeBSD 8.2

Mattia Rossi mrossi at swin.edu.au
Sun Oct 16 07:41:08 UTC 2011


On 15/10/11 16:39, Milan Obuch wrote:
> On Saturday 15 October 2011 03:28:47 Naoyuki Tai wrote:
>> Hi,
>>
>> I just realized that I get only mge0, one of two ethernet
>> ports.
>>
>> With the linux that came with DreamPlug, both ethernet
>> ports show up as eth0 and eth1.
>>
>> Is there any way to get the mge1 get going?
>>
>
> Hi,
>
> it looks like you are trying to solve similar issue as I did some time ago...
> look in this list archives for message from me sent 2010-10-27 22:59 with
> subject 'Re: Guruplug Server Plus working to some extent... [mge1 problem
> SOLVED]' with some patches attached. I think at least guruplugplus.dts could
> be useful. Basically, SoC used in Guruplug Server Plus and, I think, DreamPlug
> uses the same or at least similar, multiplexes some functions on IO pins and
> so some initialisation is important.
>
> Regards,
> Milan
>

I've had the smae problem, and it's not just a multiplexing problem, but 
also in the dreamplug.dts file send by Matthieu, he uses the wrong 
address for mdio1 and enet1: 74000 instead of 76000 (although the 
comments suggest he suspected the problem already :-) )

The two necessary bits in corected version make mge1 work:


mdio1: mdio at 76000 { /* 76000? */
                            device_type = "mdio";
                            compatible = "mrvl,mdio";
                            reg = <76000 20>;
                            #address-cells = <1>;
                            #size-cells = <0>;

                            phy1: ethernet-phy at 0 {
                                 reg = <1>;
                                 device_type = "ethernet-phy";
                            };
                 };

enet1: ethernet at 76000 { /* 76000? */
                         #address-cells = <1>;
                         #size-cells = <1>;
                         model = "V2";
                         compatible = "mrvl,ge";
                         reg = <0x76000 0x2000>;
                         ranges = <0x0 0x74000 0x2000>;
                         local-mac-address = [ 00 00 00 00 00 00 ];
                         interrupts = <16 17 18 15 47>;
                         interrupt-parent = <&PIC>;
                         phy-handle = <&phy1>;
                 };

Additionally, if you need the pins multiplexed differently, there is an 
openrd-cl.dts found in this thread, (included in sdio_patch.txt), which 
also adds sdio support to HEAD. I've applied the patch without problems 
to 9-BETA3.

There are two issues though: the included openrd-cl.dts adds pci support 
which causes a kernel panic, and the sdio driver actually doesn't seem 
to work. Didn't have enough time to investigate that yet.

Mat


More information about the freebsd-arm mailing list