From: Vladimir Oltean <olteanv@gmail.com>
To: Andrew Lunn <andrew@lunn.ch>
Cc: Tobias Waldekranz <tobias@waldekranz.com>,
netdev@vger.kernel.org, f.fainelli@gmail.com,
hkallweit1@gmail.com
Subject: Re: MDIO Debug Interface
Date: Fri, 10 Jul 2020 02:33:37 +0300 [thread overview]
Message-ID: <20200709233337.xxneb7kweayr4yis@skbuf> (raw)
In-Reply-To: <20200709232035.GE1014141@lunn.ch>
On Fri, Jul 10, 2020 at 01:20:35AM +0200, Andrew Lunn wrote:
> > Virtualization is a reasonable use case in my opinion and it would
> > need something like this, for the guest kernel to have access to its
> > PHY.
>
> And i would like a better understanding of this use case. It seems odd
> you are putting the driver for a PHY in the VM. Is the MAC driver also
> in the VM? As you said, VM context switches are expensive, so it would
> seem to make more sense to let the host drive the hardware, which it
> can do without all these context switches, and export a much simpler
> and efficient API to the VM.
>
> Andrew
The MAC driver is also in the VM, yes, and the VM can be given
pass-through access to the MAC register map. But the PHY is on a shared
bus. It is not desirable to give the VM access to the entire MDIO
controller's register map, for a number of reasons which I'm sure I
don't need to enumerate. So QEMU should be instructed which PHY should
each network interface use and on which bus, and it should fix-up the
device tree of the guest with a phy-handle to a PHY on a
para-virtualized MDIO bus, guest-side driver of which is going to be
accessing the real MDIO bus through this UAPI which we're talking about.
Then the host-side MDIO driver can ensure serialization of MDIO
accesses, etc etc.
It's been a while since I looked at this, so I may be lacking some of
the technical details, and brushing them up is definitely not something
for today.
-Vladimir
next prev parent reply other threads:[~2020-07-09 23:33 UTC|newest]
Thread overview: 15+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-07-09 20:47 MDIO Debug Interface Tobias Waldekranz
2020-07-09 22:18 ` Vladimir Oltean
2020-07-09 22:48 ` Andrew Lunn
2020-07-10 7:51 ` Tobias Waldekranz
2020-07-09 22:36 ` Florian Fainelli
2020-07-10 8:29 ` Tobias Waldekranz
2020-07-09 22:39 ` Andrew Lunn
2020-07-09 22:57 ` Vladimir Oltean
2020-07-09 23:20 ` Andrew Lunn
2020-07-09 23:33 ` Vladimir Oltean [this message]
2020-07-10 9:30 ` Tobias Waldekranz
2020-07-10 9:45 ` Vladimir Oltean
2020-07-10 13:35 ` Andrew Lunn
2020-07-10 15:47 ` Ioana Ciornei
2020-07-10 8:51 ` Tobias Waldekranz
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=20200709233337.xxneb7kweayr4yis@skbuf \
--to=olteanv@gmail.com \
--cc=andrew@lunn.ch \
--cc=f.fainelli@gmail.com \
--cc=hkallweit1@gmail.com \
--cc=netdev@vger.kernel.org \
--cc=tobias@waldekranz.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