From: Jakub Kicinski <kubakici@wp.pl>
To: Michael Heimpold <mhei@heimpold.de>
Cc: Rob Herring <robh@kernel.org>,
Stefan Wahren <stefan.wahren@i2se.com>,
Mark Rutland <mark.rutland@arm.com>,
Greg Kroah-Hartman <gregkh@linuxfoundation.org>,
Jiri Slaby <jslaby@suse.com>,
linux-serial@vger.kernel.org, linux-kernel@vger.kernel.org,
netdev@vger.kernel.org, devicetree@vger.kernel.org
Subject: Re: [PATCH v5 15/17] dt-bindings: qca7000: append UART interface to binding
Date: Thu, 11 May 2017 19:45:41 -0700 [thread overview]
Message-ID: <20170511194541.4e58cb7d@cakuba.netronome.com> (raw)
In-Reply-To: <1702237.66ccflAQAJ@kerker>
On Thu, 11 May 2017 21:12:22 +0200, Michael Heimpold wrote:
> Am Mittwoch, 10. Mai 2017, 10:53:26 CEST schrieb Stefan Wahren:
> > This merges the serdev binding for the QCA7000 UART driver (Ethernet over
> > UART) into the existing document.
> >
> > Signed-off-by: Stefan Wahren <stefan.wahren@i2se.com>
> > ---
> > .../devicetree/bindings/net/qca-qca7000.txt | 32
> > ++++++++++++++++++++++ 1 file changed, 32 insertions(+)
> >
> > diff --git a/Documentation/devicetree/bindings/net/qca-qca7000.txt
> > b/Documentation/devicetree/bindings/net/qca-qca7000.txt index
> > a37f656..08364c3 100644
> > --- a/Documentation/devicetree/bindings/net/qca-qca7000.txt
> > +++ b/Documentation/devicetree/bindings/net/qca-qca7000.txt
> > @@ -54,3 +54,35 @@ ssp2: spi@80014000 {
> > local-mac-address = [ A0 B0 C0 D0 E0 F0 ];
> > };
> > };
> > +
> > +(b) Ethernet over UART
> > +
> > +In order to use the QCA7000 as UART slave it must be defined as a child of
> > a +UART master in the device tree. It is possible to preconfigure the UART
> > +settings of the QCA7000 firmware, but it's not possible to change them
> > during +runtime.
> > +
> > +Required properties:
> > +- compatible : Should be "qca,qca7000-uart"
>
> I already discussed this with Stefan off-list a little bit, but I would like
> to bring this to a broader audience: I'm not sure whether the compatible
> should contain the "-uart" suffix, because the hardware chip is the very same
> QCA7000 chip which can also be used with SPI protocol.
> The only difference is the loaded firmware within the chip which can either
> speak SPI or UART protocol (but not both at the same time - due to shared
> pins). So the hardware design decides which interface type is used.
>
> At the moment, this patch series adds a dedicated driver for the UART
> protocol, in parallel to the existing SPI driver. So a different compatible
> string is needed here to match against the new driver.
>
> An alternative approach would be to re-use the existing compatible string
> "qca,qca7000" for both, the SPI and UART protocol, because a "smarter"
> (combined) driver would detect which protocol to use. For example the driver
> could check for spi-cpha and/or spi-cpol which are required for SPI protocol:
> if these exists the driver could assume that SPI must be used, if both are
> missing then UART protocol should be used.
> (This way it would not be necessary to check whether the node is a child of
> a SPI or UART master node - but maybe this is even easier - I don't know)
>
> Or in shorter words: my concern is that while "qca7000-uart" describes the
> hardware, it's too closely coupled to the driver implementation. Having
> some feedback of the experts would be nice :-)
I'm no expert, but devices which can do both I2C and SPI are quite
common, and they usually have the same compatible string for both
buses.
next prev parent reply other threads:[~2017-05-12 2:45 UTC|newest]
Thread overview: 30+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-10 8:53 [PATCH v5 00/17] net: qualcomm: add QCA7000 UART driver Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 01/17] net: qualcomm: remove unnecessary includes Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 02/17] net: qca_framing: use u16 for frame offset Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 03/17] net: qca_7k: Use BIT macro Stefan Wahren
[not found] ` <1494406408-31760-1-git-send-email-stefan.wahren-eS4NqCHxEME@public.gmane.org>
2017-05-10 8:53 ` [PATCH v5 04/17] net: qualcomm: use net_device_ops instead of direct call Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 05/17] net: qualcomm: Improve readability of length defines Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 06/17] net: qca_spi: remove QCASPI_MTU Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 07/17] net: qualcomm: move qcaspi_tx_cmd to qca_spi.c Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 08/17] net: qca_spi: Clarify MODULE_DESCRIPTION Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 09/17] net: qualcomm: rename qca_framing.c to qca_7k_common.c Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 10/17] net: qualcomm: prepare frame decoding for UART driver Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 11/17] net: qualcomm: make qca_7k_common a separate kernel module Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 12/17] dt-bindings: qca7000-spi: Rework binding Stefan Wahren
2017-05-10 8:53 ` [PATCH v5 13/17] dt-bindings: qca7000: rename binding Stefan Wahren
[not found] ` <1494406408-31760-14-git-send-email-stefan.wahren-eS4NqCHxEME@public.gmane.org>
2017-05-11 19:48 ` Michael Heimpold
2017-05-10 8:53 ` [PATCH v5 14/17] dt-bindings: slave-device: add current-speed property Stefan Wahren
2017-05-13 0:05 ` Rob Herring
2017-05-10 8:53 ` [PATCH v5 15/17] dt-bindings: qca7000: append UART interface to binding Stefan Wahren
[not found] ` <1494406408-31760-16-git-send-email-stefan.wahren-eS4NqCHxEME@public.gmane.org>
2017-05-11 19:12 ` Michael Heimpold
2017-05-11 20:38 ` Rob Herring
2017-05-12 2:45 ` Jakub Kicinski [this message]
2017-05-12 6:15 ` Michael Heimpold
[not found] ` <20170512061552.Horde.ggjCMHnIsr8LeADwTQwhnx7-O4EMSK59OscLBGDc3sTiBZZV94DADvEd@public.gmane.org>
2017-05-12 6:43 ` Jakub Kicinski
[not found] ` <20170511234342.575d9226-68UzVGuGftmUSpRRplVxJ1aTQe2KTcn/@public.gmane.org>
2017-05-19 7:13 ` Stefan Wahren
[not found] ` <53509108-fac2-8e8d-9279-ed54e8c1af3b-eS4NqCHxEME@public.gmane.org>
2017-05-19 12:37 ` Rob Herring
2017-05-10 8:53 ` [PATCH v5 16/17] tty: serdev-ttyport: return actual baudrate from ttyport_set_baudrate Stefan Wahren
[not found] ` <1494406408-31760-17-git-send-email-stefan.wahren-eS4NqCHxEME@public.gmane.org>
2017-05-17 11:58 ` Stefan Wahren
[not found] ` <d5533816-5d87-3772-19c0-5e57e519a3f1-eS4NqCHxEME@public.gmane.org>
2017-05-18 14:19 ` Greg Kroah-Hartman
2017-05-10 8:53 ` [PATCH v5 17/17] net: qualcomm: add QCA7000 UART driver Stefan Wahren
[not found] ` <1494406408-31760-18-git-send-email-stefan.wahren-eS4NqCHxEME@public.gmane.org>
2017-05-11 21:58 ` Lino Sanfilippo
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=20170511194541.4e58cb7d@cakuba.netronome.com \
--to=kubakici@wp.pl \
--cc=devicetree@vger.kernel.org \
--cc=gregkh@linuxfoundation.org \
--cc=jslaby@suse.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-serial@vger.kernel.org \
--cc=mark.rutland@arm.com \
--cc=mhei@heimpold.de \
--cc=netdev@vger.kernel.org \
--cc=robh@kernel.org \
--cc=stefan.wahren@i2se.com \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).