Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 21 Oct 2010 23:13:21 +0200
From:      Milan Obuch <freebsd-arm@dino.sk>
To:        freebsd-arm@freebsd.org
Subject:   Re: Guruplug Server Plus working to some extent...
Message-ID:  <201010212313.23283.freebsd-arm@dino.sk>
In-Reply-To: <201010211119.26731.freebsd-arm@dino.sk>
References:  <201010202309.40148.freebsd-arm@dino.sk> <20101021104352.588c6a5f@ernst.jennejohn.org> <201010211119.26731.freebsd-arm@dino.sk>

next in thread | previous in thread | raw e-mail | index | archive | help
On Thursday 21 October 2010 11:19:25 Milan Obuch wrote:
> On Thursday 21 October 2010 10:43:52 Gary Jennejohn wrote:
> > On Wed, 20 Oct 2010 23:09:37 +0200
> > Milan Obuch <freebsd-arm@dino.sk> wrote:
> > 
> > [snip]
> > 
> > > Second ethernet interface could be created uncommenting its definition
> > > in .dts file. With this configuration active, interface gets detected
> > > and created, but still something is wrong. Maybe my phy definition
> > > should be changed, but I do not have much knowledge in this part of
> > > system. I did not found much information detailing creation of .dts
> > > files, either.
> > > 
> > > Actually it looks like receiving packets works but not sending.
> > > Interface status changes on plugging/unplugging cable, tcpdump shows
> > > packets coming in and replies coming out on guruplug, but no reply is
> > > seen on wire. If arp packet is coming in, it is seen in arp table on
> > > guruplug device. On the other side, it is not.
> > > 
> > > Also, mge1 does not have ethernet link address (MAC) initialised, they
> > > are all-zero:
> > > 
> > > # ifconfig mge1
> > > mge1: flags=8802<BROADCAST,SIMPLEX,MULTICAST> metric 0 mtu 1500
> > > 
> > >         options=8000b<RXCSUM,TXCSUM,VLAN_MTU,LINKSTATE>
> > >         ether 00:00:00:00:00:00
> > >         media: Ethernet autoselect (100baseTX <full-duplex>)
> > >         status: active
> > > 
> > > When devd is active on startup, system hangs when mge1 is detected. No
> > > difference whether cable is plugged or not.
> > > 
> > > If someone has any idea or patches to test, I am all ears. What I
> > > already found, does not aplly well to current status, but having
> > > unusable interface does not make me happy :(
> > 
> > The first thing that occurs to me is to assign a fake ETHADDR to this
> > interface in the driver (or u-boot or .dts) and see whether it starts
> > working.
> 
> Well, I should have noted this, but I did
> 
> ifconfig mge1 ether <MAC-from-uboot>
> ifconfig mge1 192.168.17.1/24
> 
> and tested it with another usb network adapter connected with cross cable.
> I looked on both guruplug and notebook with tcpdump and packets sent from
> notebook to guruplug (usually arp's) are seen by tcpdump on guruplug and
> inserted into arp table. The other way it does not work - tcpdump on
> guruplug sees responses sent, but not on the other side.
> 
> Regards,
> Milan
> 

I did next test with kernel created without option DEVICE_POLLING in kernel 
config. This time system did not hang on boot even with devd running, but 
sending frames from mge1 to wire does not work either.

Also, when I put mge1's ethernet link address (MAC) into .dts file, it is 
initialised with this value, as expected. But nothing else changed - receiving 
frames works, sending does not.

Maybe it's time for some mge's source tweaking, but I have absolutelly no idea 
where to begin.

Regards,
Milan



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201010212313.23283.freebsd-arm>