All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergei Shtylyov <sergei.shtylyov@cogentembedded.com>
To: linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 2/2] ARM: shmobile: Koelsch: add Ether support
Date: Wed, 18 Dec 2013 20:23:41 +0000	[thread overview]
Message-ID: <52B2125F.2010404@cogentembedded.com> (raw)
In-Reply-To: <52A620C5.9030600@cogentembedded.com>

Hello.

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 <sergei.shtylyov@cogentembedded.com>

>>> 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.

    Oh yes, it does: phylib fails to recognize link down/up after you 
disconnect/reconnect the cable since it relies solely on IRQ for the link 
changes if it's specified.
    Now for the really good news: I was able to get the PHY IRQs on Koelsch 
board when I set the trigger mode to falling-edge; that seemed strange as the 
PHY interrupts are level-sensitive, according to the documentation. And only 
after we commented out the wild PHY reset done by the 'sh_eth' driver on each 
open, I was able to get the IRQs in the low-level trigger mode.
    So, I'm expecting to be able to finally resolve this issue on top of the 
net-next tree which now contains 2 patchsets that should enable me to finally 
remove that wild PHY reset for good:

http://marc.info/?l=linux-netdev&m\x138636384109141
http://marc.info/?l=linux-netdev&m\x138692649110301

>>> Best,

>>> / magnus

WBR, Sergei


WARNING: multiple messages have this Message-ID (diff)
From: sergei.shtylyov@cogentembedded.com (Sergei Shtylyov)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 2/2] ARM: shmobile: Koelsch: add Ether support
Date: Thu, 19 Dec 2013 00:23:43 +0300	[thread overview]
Message-ID: <52B2125F.2010404@cogentembedded.com> (raw)
In-Reply-To: <52A620C5.9030600@cogentembedded.com>

Hello.

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 <sergei.shtylyov@cogentembedded.com>

>>> 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.

    Oh yes, it does: phylib fails to recognize link down/up after you 
disconnect/reconnect the cable since it relies solely on IRQ for the link 
changes if it's specified.
    Now for the really good news: I was able to get the PHY IRQs on Koelsch 
board when I set the trigger mode to falling-edge; that seemed strange as the 
PHY interrupts are level-sensitive, according to the documentation. And only 
after we commented out the wild PHY reset done by the 'sh_eth' driver on each 
open, I was able to get the IRQs in the low-level trigger mode.
    So, I'm expecting to be able to finally resolve this issue on top of the 
net-next tree which now contains 2 patchsets that should enable me to finally 
remove that wild PHY reset for good:

http://marc.info/?l=linux-netdev&m=138636384109141
http://marc.info/?l=linux-netdev&m=138692649110301

>>> Best,

>>> / magnus

WBR, Sergei

  parent reply	other threads:[~2013-12-18 20:23 UTC|newest]

Thread overview: 46+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-30 22:16 [PATCH 0/2] Add Ether support for R8A7791/Koelsch board Sergei Shtylyov
2013-10-30 23:16 ` Sergei Shtylyov
2013-10-30 22:18 ` [PATCH 1/2] ARM: shmobile: r8a7791: add Ether clock Sergei Shtylyov
2013-10-30 23:18   ` Sergei Shtylyov
2013-10-31  6:06   ` Simon Horman
2013-10-31  6:06     ` Simon Horman
2013-10-31 20:50     ` Sergei Shtylyov
2013-10-31 21:50       ` Sergei Shtylyov
2013-11-01  6:29       ` Simon Horman
2013-11-01  6:29         ` Simon Horman
2013-12-19 17:59   ` [PATCH 1/2] arm: shmobile: r8a7791: Add SATA clocks Valentine Barshak
2014-01-09  8:25   ` Simon Horman
2014-02-06 21:12   ` [PATCH 1/2] ARM: shmobile: r8a7791: add Ether DT support Sergei Shtylyov
2014-02-06 22:12     ` Sergei Shtylyov
2014-02-06 22:12     ` Sergei Shtylyov
2014-02-10 12:54     ` Ben Dooks
2014-02-10 12:54       ` Ben Dooks
2014-02-10 12:54       ` Ben Dooks
2014-02-10 13:24       ` Sergei Shtylyov
2014-02-10 13:24         ` Sergei Shtylyov
2014-02-10 13:24         ` Sergei Shtylyov
2014-05-29 11:05   ` [PATCH 1/2] arm: shmobile: r8a7791: add USB3.0 clocks to device tree Yoshihiro Shimoda
2014-05-29 11:05     ` Yoshihiro Shimoda
2014-05-29 11:05     ` Yoshihiro Shimoda
2013-10-30 22:20 ` [PATCH 2/2] ARM: shmobile: Koelsch: add Ether support Sergei Shtylyov
2013-10-30 23:19   ` Sergei Shtylyov
2013-10-31  5:02   ` Simon Horman
2013-10-31  5:02     ` Simon Horman
2013-10-31 20:25     ` Sergei Shtylyov
2013-10-31 21:24       ` Sergei Shtylyov
2013-10-31  8:06   ` Magnus Damm
2013-10-31  8:06     ` Magnus Damm
2013-10-31 18:03     ` Sergei Shtylyov
2013-10-31 19:03       ` Sergei Shtylyov
2013-12-09 18:58       ` Sergei Shtylyov
2013-12-09 19:57         ` Sergei Shtylyov
2013-12-09 21:14         ` Sergei Shtylyov
2013-12-09 22:14           ` Sergei Shtylyov
2013-12-18 20:23         ` Sergei Shtylyov [this message]
2013-12-18 21:23           ` Sergei Shtylyov
2013-10-31  8:10   ` Magnus Damm
2013-10-31  8:10     ` Magnus Damm
2013-10-31 18:47     ` Sergei Shtylyov
2013-10-31 19:46       ` Sergei Shtylyov
2013-12-19 17:59   ` [PATCH 2/2] arm: shmobile: koelsch: Add SATA support Valentine Barshak
2014-11-11  4:37   ` [PATCH 2/2] ARM: shmobile: koelsch: add Volume Ramp usage on comment Kuninori Morimoto

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=52B2125F.2010404@cogentembedded.com \
    --to=sergei.shtylyov@cogentembedded.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.