From: Christoph Fritz <chf.fritz@googlemail.com>
To: "Uwe Kleine-König" <u.kleine-koenig@pengutronix.de>,
"Shawn Guo" <shawnguo@kernel.org>,
"Fabio Estevam" <fabio.estevam@nxp.com>
Cc: Martin Fuzzey <mfuzzey@parkeon.com>,
Baruch Siach <baruch@tkos.co.il>,
linux-serial@vger.kernel.org,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
kernel@pengutronix.de,
linux-arm-kernel <linux-arm-kernel@lists.infradead.org>
Subject: Re: serial: imx: regression triggered by newly introduced DSR irq handling
Date: Fri, 05 Aug 2016 14:03:35 +0200 [thread overview]
Message-ID: <1470398615.1936.22.camel@googlemail.com> (raw)
In-Reply-To: <20160805065845.GI17874@pengutronix.de>
On Fri, 2016-08-05 at 08:58 +0200, Uwe Kleine-König wrote:
> On Fri, Aug 05, 2016 at 12:44:23AM +0200, Christoph Fritz wrote:
> > here on a imx6sx board newly introduced DSR-irq-handling breaks serial
> > console and network support.
> >
> > Reverting commit 27e16501052e5341934d3 "serial: imx: implement DSR irq
> > handling for DTE mode" fixes the issue.
> >
> > The underlying cause is the RMII network configuration where register
> > bit SION in IOMUXC_SW_MUX_CTL_PAD_ENET1_TX_CLK is necessary. But this
> > also falsely feeds signal UART1_DTR_B and triggers DSR irq...
> >
> > Can we revert this commit or add a quirk for RMII-SION configs or make
> > this optional by a device tree option?
>
> Hmm, MX6SX_PAD_ENET1_TX_CLK__ENET1_TX_CLK in
> arch/arm/boot/dts/imx6sx-pinfunc.h doesn't have SION set.
>
> I remember there were issues around eth and SION on i.MX6DL, but don't
> know the details. A quick net research found
> https://community.nxp.com/thread/359531 which has: "Set the SION bit.
> Note that this is not required because the funtion setting controls the
> signal path, but it is good practice as it reminds the user that the
> clock needs to fed back into the Ethernet MAC.". Sounds like dangerous
> smattering and a wrong expectation about "users".
>
> https://community.nxp.com/thread/376821 is from someone who has the same
> problem(?) on i.MX6SX, but no solution yet.
>
> Does that mean MX6SX_PAD_ENET1_TX_CLK__ENET1_TX_CLK always needs the
> SION bit set?
SION is necessary for pinconfig MX6SX_PAD_ENET1_TX_CLK__ENET1_REF_CLK1
if bit 17 in IOMUXC_GPR_GPR1 is set and bit 13 not.
So that ref_enetpll1 provides a clock not only for the external PHY but
also for the internal controller.
Using SION is a quirk here, because the silicon doesn't feed the clock
back to the internal controller automatically.
On the other hand, NXP could argue: You need to add a wire on your PCB
between ENET1_REF_CLK1 and ENET1_TX_CLK -- but referring to the
datasheet ENET1_TX_CLK isn't used in RMII config...
So if Fabio or Shawn agrees with my assumption above, I'll add something
like 27e16501052e5341934d3 "serial: imx: implement DSR irq
handling for DTE mode".
Okay?
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
WARNING: multiple messages have this Message-ID (diff)
From: chf.fritz@googlemail.com (Christoph Fritz)
To: linux-arm-kernel@lists.infradead.org
Subject: serial: imx: regression triggered by newly introduced DSR irq handling
Date: Fri, 05 Aug 2016 14:03:35 +0200 [thread overview]
Message-ID: <1470398615.1936.22.camel@googlemail.com> (raw)
In-Reply-To: <20160805065845.GI17874@pengutronix.de>
On Fri, 2016-08-05 at 08:58 +0200, Uwe Kleine-K?nig wrote:
> On Fri, Aug 05, 2016 at 12:44:23AM +0200, Christoph Fritz wrote:
> > here on a imx6sx board newly introduced DSR-irq-handling breaks serial
> > console and network support.
> >
> > Reverting commit 27e16501052e5341934d3 "serial: imx: implement DSR irq
> > handling for DTE mode" fixes the issue.
> >
> > The underlying cause is the RMII network configuration where register
> > bit SION in IOMUXC_SW_MUX_CTL_PAD_ENET1_TX_CLK is necessary. But this
> > also falsely feeds signal UART1_DTR_B and triggers DSR irq...
> >
> > Can we revert this commit or add a quirk for RMII-SION configs or make
> > this optional by a device tree option?
>
> Hmm, MX6SX_PAD_ENET1_TX_CLK__ENET1_TX_CLK in
> arch/arm/boot/dts/imx6sx-pinfunc.h doesn't have SION set.
>
> I remember there were issues around eth and SION on i.MX6DL, but don't
> know the details. A quick net research found
> https://community.nxp.com/thread/359531 which has: "Set the SION bit.
> Note that this is not required because the funtion setting controls the
> signal path, but it is good practice as it reminds the user that the
> clock needs to fed back into the Ethernet MAC.". Sounds like dangerous
> smattering and a wrong expectation about "users".
>
> https://community.nxp.com/thread/376821 is from someone who has the same
> problem(?) on i.MX6SX, but no solution yet.
>
> Does that mean MX6SX_PAD_ENET1_TX_CLK__ENET1_TX_CLK always needs the
> SION bit set?
SION is necessary for pinconfig MX6SX_PAD_ENET1_TX_CLK__ENET1_REF_CLK1
if bit 17 in IOMUXC_GPR_GPR1 is set and bit 13 not.
So that ref_enetpll1 provides a clock not only for the external PHY but
also for the internal controller.
Using SION is a quirk here, because the silicon doesn't feed the clock
back to the internal controller automatically.
On the other hand, NXP could argue: You need to add a wire on your PCB
between ENET1_REF_CLK1 and ENET1_TX_CLK -- but referring to the
datasheet ENET1_TX_CLK isn't used in RMII config...
So if Fabio or Shawn agrees with my assumption above, I'll add something
like 27e16501052e5341934d3 "serial: imx: implement DSR irq
handling for DTE mode".
Okay?
next prev parent reply other threads:[~2016-08-05 12:03 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-24 13:24 [PATCH v2 0/6] serial: imx: handshaking fixes and improvments Uwe Kleine-König
2016-03-24 13:24 ` Uwe Kleine-König
2016-03-24 13:24 ` [PATCH v2 1/6] serial: imx: fix polarity of RI Uwe Kleine-König
2016-03-24 13:24 ` Uwe Kleine-König
2016-03-24 13:24 ` [PATCH v2 2/6] serial: imx: let irq handler return IRQ_NONE if no event was handled Uwe Kleine-König
2016-03-24 13:24 ` Uwe Kleine-König
2016-03-24 13:24 ` [PATCH v2 3/6] serial: imx: make sure unhandled irqs are disabled Uwe Kleine-König
2016-03-24 13:24 ` Uwe Kleine-König
2016-03-24 13:24 ` [PATCH v2 4/6] serial: imx: only count 0->1 transitions for RNG Uwe Kleine-König
2016-03-24 13:24 ` Uwe Kleine-König
2016-03-24 13:24 ` [PATCH v2 5/6] serial: imx: reorder functions to simplify next patch Uwe Kleine-König
2016-03-24 13:24 ` Uwe Kleine-König
2016-03-24 13:24 ` [PATCH v2 6/6] serial: imx: implement DSR irq handling for DTE mode Uwe Kleine-König
2016-03-24 13:24 ` Uwe Kleine-König
[not found] ` <1470350663.26773.41.camel@googlemail.com>
2016-08-05 6:58 ` serial: imx: regression triggered by newly introduced DSR irq handling Uwe Kleine-König
2016-08-05 6:58 ` Uwe Kleine-König
2016-08-05 12:03 ` Christoph Fritz [this message]
2016-08-05 12:03 ` Christoph Fritz
2016-08-10 20:54 ` Fabio Estevam
2016-08-10 20:54 ` Fabio Estevam
2016-08-13 20:35 ` Christoph Fritz
2016-08-13 20:35 ` Christoph Fritz
2016-08-15 5:22 ` Uwe Kleine-König
2016-08-15 5:22 ` Uwe Kleine-König
2016-08-17 9:25 ` [PATCH] ARM: dts: imx6sx: document SION necessity of ENET1_REF_CLK1 Christoph Fritz
2016-08-17 9:25 ` Christoph Fritz
2016-08-17 14:26 ` Fabio Estevam
2016-08-17 14:26 ` Fabio Estevam
2016-08-17 18:03 ` Christoph Fritz
2016-08-17 18:03 ` Christoph Fritz
2016-08-22 15:08 ` Christoph Fritz
2016-08-22 15:08 ` Christoph Fritz
2016-08-29 1:18 ` Shawn Guo
2016-08-29 1:18 ` Shawn Guo
2016-11-21 11:00 ` serial: imx: regression triggered by newly introduced DSR irq handling Christoph Fritz
2016-11-21 11:00 ` Christoph Fritz
2016-11-21 11:07 ` Uwe Kleine-König
2016-11-21 11:07 ` Uwe Kleine-König
2016-04-11 16:01 ` [PATCH v2 0/6] serial: imx: handshaking fixes and improvments Petr Štetiar
2016-04-11 16:01 ` Petr Štetiar
2016-04-12 7:46 ` Uwe Kleine-König
2016-04-12 7:46 ` Uwe Kleine-König
2016-04-12 9:48 ` Petr Štetiar
2016-04-12 9:48 ` Petr Štetiar
2016-04-12 10:58 ` Uwe Kleine-König
2016-04-12 10:58 ` Uwe Kleine-König
2016-04-12 12:17 ` Petr Štetiar
2016-04-12 12:17 ` Petr Štetiar
2016-04-12 17:30 ` Uwe Kleine-König
2016-04-12 17:30 ` Uwe Kleine-König
2016-04-13 9:13 ` Petr Štetiar
2016-04-13 9:13 ` Petr Štetiar
2016-04-13 11:16 ` Uwe Kleine-König
2016-04-13 11:16 ` Uwe Kleine-König
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=1470398615.1936.22.camel@googlemail.com \
--to=chf.fritz@googlemail.com \
--cc=baruch@tkos.co.il \
--cc=fabio.estevam@nxp.com \
--cc=gregkh@linuxfoundation.org \
--cc=kernel@pengutronix.de \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-serial@vger.kernel.org \
--cc=mfuzzey@parkeon.com \
--cc=shawnguo@kernel.org \
--cc=u.kleine-koenig@pengutronix.de \
/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.