Re: FPGA PCI(e) bridge

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Thierry Reding wrote:
> * Matthew Wilcox wrote:
> > On Tue, Jun 16, 2009 at 08:48:38AM +0200, Thierry Reding wrote:
> > > I have the following setup: a processor board with an FPGA that implements
> > > additional functionality such as UART, network interface, etc. This FPGA
> > > should be connected to the processor via a PCIe interface. That means the
> > > FPGA instantiates a PCIe core for communication with the processor.
> > > 
> > > I'm now facing the following problem: for better code quality I'd like to
> > > implement the different components in the FPGA as separate logical PCI
> > > devices, and support this functionality with a single Linux PCI driver
> > > for that specific device. On the other hand the FPGA PCIe core is unable to
> > > run in PCI bridge mode. My understanding was that in order to support
> > > multiple devices through a single PCI host the only solution would be to have
> > > the host run in bridge mode so that it can probe the subsequent devices.
> > 
> > Can the core be configured to support multiple functions?  Both PCI
> > and PCIe allow a single device to support up to 8 functions.  Here's an
> > example from my laptop:
> > 
> > 1c:03.0 CardBus bridge: O2 Micro, Inc. OZ711SP1 Memory CardBus Controller (rev 01)
> > 1c:03.2 SD Host controller: O2 Micro, Inc. Integrated MMC/SD Controller (rev 02)
> > 1c:03.4 FireWire (IEEE 1394): O2 Micro, Inc. Firewire (IEEE 1394) (rev 02)
> > 
> > (PCIe has extensions to allow a device to support more than eight
> > functions, but that comes with limitations you probably don't want).
> 
> I'll need to investigate whether this is possible. Thanks.
> Thierry

So the core seems to be able to support multiple functions. On the other
hand, 8 functions is most likely not enough for our purposes. What kind of
limitations does PCIe have with more than eight functions?

Otherwise I'm probably stuck with either trying to find some other core that
can run in bridge mode or having a monolithic driver to serve all logical
devices.

Thierry
--
To unsubscribe from this list: send the line "unsubscribe linux-pci" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [DMA Engine]     [Linux Coverity]     [Linux USB]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Greybus]

  Powered by Linux