Re: FPGA PCI(e) bridge

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

 



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).

-- 
Matthew Wilcox				Intel Open Source Technology Centre
"Bill, look, we understand that you're interested in selling us this
operating system, but compare it to ours.  We can't possibly take such
a retrograde step."
--
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