On Wed, Jun 15, 2016 at 7:47 PM, Lowell Gilbert <[email protected]>
wrote:

> Michal G <[email protected]> writes:
>
> > I am trying to get up and running EMAC0 over FPGA in 100Mb/s. 1000Mb/s is
> > working fine.
> > To bring up/down interface I am using ifplugd. It can successfully plug
> > 100Mb cable and driver sets libphy: stmmac-0:01 - Link is Up - 100/Full
> and
> > if I plug 1000Mb cable it set it to 1000/Full.
> >
> > But if I am trying to obtain lease for IP or use static settings with
> 100Mb
> > cable, I cannot communicate with the network. But with 1000Mb cable
> > everything works fine.
>
> That's really strange. If the faster link didn't work but the slower one
> did, that would be far less surprising. I'm pretty sure that nothing you
> can configure would make 100 megabit fail when 1000 megabit worked fine.
>
> One thing that might be interesting is plugging into a gigabit link and
> then forcing the speed to 100 megabit with ifconfig. If it communicates
> fine in that setup, the problem might be outside of the SoC board.
>

So I figured it out. There is module in the FPGA between EMAC0 and external
PHY called splitter. This splitter has register to switch between speeds.
In default it is set to 1000Mb and it needs to be switched to 100Mb if
needed.
I found out that in 4.5 kernel there is *dwmac-socfpga.c *part of stmmac.c
driver which includes this switching capability. Unfortunately it is
missing in 3.10 kernel.
Now I need to figure out if it is possible to port this feature to 3.10 and
how to do it.
_______________________________________________
Rfi mailing list
[email protected]
http://lists.rocketboards.org/cgi-bin/mailman/listinfo/rfi

Reply via email to