From: Andrew Lunn <andrew@lunn.ch>
To: Michael Grzeschik <mgr@pengutronix.de>
Cc: Tristram.Ha@microchip.com, kernel@pengutronix.de,
UNGLinuxDriver@microchip.com, netdev@vger.kernel.org
Subject: Re: [RFC 1/3] mdio-bitbang: add SMI0 mode support
Date: Fri, 10 May 2019 14:36:31 +0200 [thread overview]
Message-ID: <20190510123631.GE4889@lunn.ch> (raw)
In-Reply-To: <20190510073224.obymtg4thqleypne@pengutronix.de>
> > > +/* Serial Management Interface (SMI) uses the following frame format:
> > > + *
> > > + * preamble|start|Read/Write| PHY | REG |TA| Data bits | Idle
> > > + * |frame| OP code |address |address| | |
> > > + * read | 32x1´s | 01 | 00 | 1xRRR | RRRRR |Z0| 00000000DDDDDDDD | Z
> > > + * write| 32x1´s | 01 | 00 | 0xRRR | RRRRR |10| xxxxxxxxDDDDDDDD | Z
> > > + *
> > > + * The register number is encoded with the 5 least significant bits in REG
> > > + * and the 3 most significant bits in PHY
> > > + */
> > > +#define MII_ADDR_SMI0 (1<<31)
> > > +
> >
> > Michael
> >
> > This is a Micrel Proprietary protocol. So we should reflect this in
> > the name. MII_ADDR_MICREL_SMI? Why the 0? Are there different
> > versions? Maybe replace all SMI0 with MICREL_SMI in mdio-bitbang.c
>
> There are two variants of the SMI interface.
Hi Michael
O.K, that explains the 0.
>
> The KSZ8863/73/93 Products use the above Variant described as "SMI0".
>
> The KSZ8864/95 Products use another layout:
>
> preamble|start|Read/Write| PHY | REG |TA| Data bits | Idle
> |frame| OP code |address |address| | |
> read | 32x1´s | 01 | 10 | RR11R | RRRRR |Z0| 00000000DDDDDDDD | Z
> write| 32x1´s | 01 | 01 | RR11R | RRRRR |10| xxxxxxxxDDDDDDDD | Z
>
> So they describe their write/read operation in the OP code rather then
> the PHY address.
At a first look, i think a standard MDIO bus controller can do this?
If so, we don't need a second define, just some code in the switch
driver which shuffles bits around.
>
> We could change the SMI index to SMI_KSZ88X3 for the current SMI0 to
> give it a more descriptive name.
That seems sensible. In the mv88e6xxx driver, we name things based on
the first device to introduce the feature.
Andrew
next prev parent reply other threads:[~2019-05-10 12:36 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-05-08 21:13 [RFC 0/3] microchip: add support for ksz8863 driver family Michael Grzeschik
2019-05-08 21:13 ` [RFC 1/3] mdio-bitbang: add SMI0 mode support Michael Grzeschik
2019-05-09 14:29 ` Andrew Lunn
2019-05-10 7:32 ` Michael Grzeschik
2019-05-10 12:36 ` Andrew Lunn [this message]
2019-05-08 21:13 ` [RFC 2/3] ksz: Add Microchip KSZ8873 SMI-DSA driver Michael Grzeschik
2019-05-09 14:48 ` Andrew Lunn
2019-05-10 7:37 ` Michael Grzeschik
2019-05-08 21:13 ` [RFC 3/3] dt-bindings: net: dsa: document additional Microchip KSZ8863 family switches Michael Grzeschik
2019-06-13 20:09 ` Rob Herring
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=20190510123631.GE4889@lunn.ch \
--to=andrew@lunn.ch \
--cc=Tristram.Ha@microchip.com \
--cc=UNGLinuxDriver@microchip.com \
--cc=kernel@pengutronix.de \
--cc=mgr@pengutronix.de \
--cc=netdev@vger.kernel.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.