Port-sandpoint archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Re: DS-207 network failure



On Fri, 27 May 2011 11:36:39 +0100
Julian Coleman <jdc%coris.org.uk@localhost> wrote:

> > An alternative is to use "cp" to copy the binary image from
> > 0x100000 to 0x1000000 after loading it.
> 
> This works perfectly:

Ok, nice.


> > BTW, did you ever try to run altboot directly after using PPCBoot's
> > SK98 driver? When it works this would mean we just forgot to
> > initialize some register.
> 
> I also tried that after loading altboot via bootp.  No change.
> However, I guess that the reset that we do in skg_init() removes
> those settings.

For a test we could also compile an altboot which doesn't reset the
chip and just sets up the descriptors and BMU...


But the more I think about it, I'm getting the impression that our
problems are caused by PPCBoot setting up the SKnet NIC.

One big difference between your Synology boxes and mine is that you and
Oscar are running an updated PPCBoot, which supports SK98, while my
older PPCBoot doesn't! It just lets the NIC alone.

So the Linux/PPCBoot SK98 driver does something bad to the chip, which
our initialization routine cannot revert. The chip itself and the PHY
are exactly the same as mine. I already checked that with Oscar.


> I unpacked base.tgz and etc.tgz onto a CF card, and connected that
> via USB. If I run tcpdump from there, it doesn't see any packets, so
> it's not just sending that's broken.

Ok, interesting. Thanks for the test!


>  As I mentioned before, the phy
> negotiates the link speed correctly though.

Yes, the PHY is ok, but the transmit/receive engine seems dead.


> So, it looks like hunting through the linux driver is needed.  I
> wonder about dumping out the registers before we do a chip reset?

Agreed. We should do that both and compare all registers. I can compile
a new altboot with that, if you don't want to do it yourself.

Maybe it even helps when you copy the contents of all my registers to
yours before doing the reset. Then it would only be a matter of time
to find the guilty bit.


-- 
Frank Wille


Home | Main Index | Thread Index | Old Index