netdev.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Ira Snyder <iws@ovro.caltech.edu>
To: Zang Roy-R61911 <tie-fei.zang@freescale.com>
Cc: linux-kernel@vger.kernel.org, linuxppc-dev@ozlabs.org,
	netdev@vger.kernel.org, Rusty Russell <rusty@rustcorp.com.au>,
	Arnd Bergmann <arnd@arndb.de>,
	Jan-Bernd Themann <THEMANN@de.ibm.com>
Subject: Re: [RFC v1] virtio: add virtio-over-PCI driver
Date: Thu, 19 Feb 2009 08:14:38 -0800	[thread overview]
Message-ID: <20090219161438.GA12795@ovro.caltech.edu> (raw)
In-Reply-To: <7DF0AF56456B8F4081E3C44CCCE311DE15199F@zch01exm23.fsl.freescale.net>

On Thu, Feb 19, 2009 at 02:10:08PM +0800, Zang Roy-R61911 wrote:
>  
> 
> > -----Original Message-----
> > From: 
> > linuxppc-dev-bounces+tie-fei.zang=freescale.com@ozlabs.org 
> > [mailto:linuxppc-dev-bounces+tie-fei.zang=freescale.com@ozlabs
> > .org] On Behalf Of Ira Snyder
> > Sent: Wednesday, February 18, 2009 6:24 AM
> > To: linux-kernel@vger.kernel.org
> > Cc: linuxppc-dev@ozlabs.org; netdev@vger.kernel.org; Rusty 
> > Russell; Arnd Bergmann; Jan-Bernd Themann
> > Subject: [RFC v1] virtio: add virtio-over-PCI driver
> snip
> > diff --git a/drivers/virtio/Kconfig b/drivers/virtio/Kconfig
> > index 3dd6294..efcf56b 100644
> > --- a/drivers/virtio/Kconfig
> > +++ b/drivers/virtio/Kconfig
> > @@ -33,3 +33,25 @@ config VIRTIO_BALLOON
> >  
> >  	 If unsure, say M.
> >  
> > +config VIRTIO_OVER_PCI_HOST
> > +	tristate "Virtio-over-PCI Host support (EXPERIMENTAL)"
> > +	depends on PCI && EXPERIMENTAL
> > +	select VIRTIO
> > +	---help---
> > +	  This driver provides the host support necessary for 
> > using virtio
> > +	  over the PCI bus with a Freescale MPC8349EMDS 
> > evaluation board.
> > +
> > +	  If unsure, say N.
> > +
> > +config VIRTIO_OVER_PCI_FSL
> > +	tristate "Virtio-over-PCI Guest support (EXPERIMENTAL)"
> > +	depends on MPC834x_MDS && EXPERIMENTAL
> > +	select VIRTIO
> > +	select DMA_ENGINE
> > +	select FSL_DMA
> > +	---help---
> > +	  This driver provides the guest support necessary for 
> > using virtio
> > +	  over the PCI bus.
> > +
> > +	  If unsure, say N.
> > +
> > diff --git a/drivers/virtio/Makefile b/drivers/virtio/Makefile
> > index 6738c44..f31afaa 100644
> > --- a/drivers/virtio/Makefile
> > +++ b/drivers/virtio/Makefile
> > @@ -2,3 +2,5 @@ obj-$(CONFIG_VIRTIO) += virtio.o
> >  obj-$(CONFIG_VIRTIO_RING) += virtio_ring.o
> >  obj-$(CONFIG_VIRTIO_PCI) += virtio_pci.o
> >  obj-$(CONFIG_VIRTIO_BALLOON) += virtio_balloon.o
> > +obj-$(CONFIG_VIRTIO_OVER_PCI_HOST) += vop_host.o
> > +obj-$(CONFIG_VIRTIO_OVER_PCI_FSL) += vop_fsl.o
> I suppose we  need to build the kernel twice. one for vop_host  (on host
> with pci enabled) and the
> other is for vop_fsl ( on agent with pci disabled). Is it possible to
> build one image for both host and 
> agent.  We do not scan the pci bus if the controller is configured to
> agent.
> 

You should be able to build a kernel with support for both host and
guest operation, and then use the device tree to switch which driver you
get. The host driver won't be used without a PCI bus, and the guest
driver won't be used without the message unit.

> Also, is it possible to include mpc85xx architecture? They should be
> same.
> There is some code for 85xx in Fresscale BSP.
> http://www.bitshrine.org/gpp/linux-fsl-2.6.23-MPC8568MDS_PCI_Agent_PCIe_
> EP_Drvier.patch

I looked at the cardnet driver before I implemented my PCINet driver. I
hunch it would be rejected for the same reasons, but maybe not. Also, it
makes no use of DMA, which is critical for good transfer speed. Using
memcpy() in PCINet gives performance around 10 mbit/sec, which is
terrible.

I'm sure the driver isn't very hard to port to 85xx, I just don't have
any 85xx boards to test with. The driver only directly interacts with
the messaging unit, which is a pretty simple piece of hardware.

Thanks,
Ira

  reply	other threads:[~2009-02-19 16:14 UTC|newest]

Thread overview: 13+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-02-17 22:24 [RFC v1] virtio: add virtio-over-PCI driver Ira Snyder
2009-02-18  6:43 ` Rusty Russell
2009-02-18 16:38   ` Ira Snyder
2009-02-19 11:18     ` Rusty Russell
2009-02-19 16:49       ` Ira Snyder
2009-02-18 16:47 ` Kumar Gala
2009-02-19  6:13   ` Zang Roy-R61911
2009-02-19 16:51     ` Kumar Gala
2009-02-19 17:03       ` Ira Snyder
2009-02-20  3:44       ` Zang Roy-R61911
2009-02-19  6:10 ` Zang Roy-R61911
2009-02-19 16:14   ` Ira Snyder [this message]
2009-02-20  3:37     ` Zang Roy-R61911

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=20090219161438.GA12795@ovro.caltech.edu \
    --to=iws@ovro.caltech.edu \
    --cc=THEMANN@de.ibm.com \
    --cc=arnd@arndb.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linuxppc-dev@ozlabs.org \
    --cc=netdev@vger.kernel.org \
    --cc=rusty@rustcorp.com.au \
    --cc=tie-fei.zang@freescale.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).