Subject: Re: Ethernet not working on a different SoC with same eth HW

From: Mason <[email-masked]>
Date: Wed, 9 Nov 2016 18:38:12 +0100

On 08/11/2016 16:41, Mason wrote:

> On 31/10/2016 16:29, Mason wrote:
> 
>> I'm using these net drivers:
>>
>>   drivers/net/ethernet/aurora/nb8800.c
>>   drivers/net/phy/at803x.c
>>
>> With a smp8758 board, they work great.
>> I've been trying to use them on a different board:
>>
>>   same eth PHY (Atheros AR8035)
>>   same eth MAC (Aurora SSN8800)
>>   different SoC (same base address for MAC block)
>>
>> It doesn't work, and I'm not sure where to look first...
> 
> After oh-so-many days making increasingly random changes,
> hoping something would magically un-break, we did find a
> *local* commit for an exotic platform (chip emulator) that
> was causing the issue.

However... all is not well yet :-(

A) When the board is connected to a Gigabit switch, it is able to
complete the DHCP dance. But this takes around 5 seconds,
(with several requests timing out).

Whereas the same board running an ugly 3.4 kernel (which Mans called
"quite hideous even by evil vendor standards") completes the DHCP
dance in under a second.

B) When the board is connected to a Fast Ethernet switch, the DHCP
dance times out forever. (Whereas this works on the 3.4 kernel.)

C) When the board is connected to a Gigabit switch, then plugged
into the Fast Ethernet switch, then back into the Gigabit switch,
network connectivity is lost forever.

We've started examining the differences in phy and net frameworks
between 3.4 and 4.9 but that's an atom in a haystack.

To be continued...

Regards.