Subject: [PATCH 2/2] ARM: shmobile: Koelsch: add Ether support

From: [email-masked] (Sergei Shtylyov)
Date: Tue, 10 Dec 2013 01:14:03 +0300

On 12/09/2013 10:57 PM, Sergei Shtylyov wrote:

>>>> Register Ether platform device and pin data on  the  Koelsch board.
>>>> Register platform fixup for Micrel KSZ8041 PHY, just like on the Lager board.

>>>> Signed-off-by: Sergei Shtylyov <[email-masked]>

>>> Thanks for your patch. Just like on the Lager board we also need to
>>> tie in the PHY IRQ pin.

>>     Not only on the Lager board, BOCK-W also I think.

>>> Polling is not good enough when the hardware
>>> can do better. Can you please share your PHY IRQ plans with us?

>>     It's on my agenda now -- will start after I do away with the CAN driver
>> and the current Koelsch Ether support.

>     I have now implemented PHY IRQ support for BOCK-W, Lager, and Koelsch
> boards (had to extend the Micrel PHY driver to recognize undocumented
> KSZ8041RNLI PHY ID for that) but I must say that the PHY interrupt doesn't get
> generated on either of the board and I don't know why yet (I can't rule out
> the INTC driver issue); that's bad news. Good news is that even this doesn't
> prevent phylib from working properly as it still polls the PHY once a second.

    Forgot to note that using PHY IRQ on Lager/Koelsch seems quite pointless 
to me as we're using ETH_LINK signal on these boards and Ether core generates 
interrupts on the change of this signal using which the driver actually 
controls packet Rx/Tx; Micrel PHY driver also only enables interrupts on link 
up/down -- so it seems only useful on BOCK-W where we ignore ETH_LINK and so 
the driver controls packet Rx/Tx from the phylib's adjust_link() callback.

>>> Best,

>>> / magnus

WBR, Sergei