Staging: add Driver for Altera PCI Express Chaining DMA reference design

Altera PCI Express Chaining DMA driver

A reference driver that exercises the Chaining DMA logic reference
design generated along the Altera FPGA PCI Express soft or hard core,
only if instantiated using the MegaWizard, not the SOPC builder, of
Quartus 8.1.

This driver can be used to test the logic instantiation and PCI
Express layers and acts as a starting point for driving custom logic
connected to the PCI Express End Point Chaining DMA engines.

Signed-off-by: Leon Woestenberg <leon@sidebranch.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@suse.de>
This commit is contained in:
Leon Woestenberg 2008-12-01 08:45:57 -05:00 committed by Greg Kroah-Hartman
parent 630231776d
commit c8801d8c9f
6 changed files with 1214 additions and 0 deletions

View file

@ -79,5 +79,7 @@ source "drivers/staging/asus_oled/Kconfig"
source "drivers/staging/panel/Kconfig"
source "drivers/staging/altpciechdma/Kconfig"
endif # !STAGING_EXCLUDE_BUILD
endif # STAGING

View file

@ -22,3 +22,4 @@ obj-$(CONFIG_BENET) += benet/
obj-$(CONFIG_COMEDI) += comedi/
obj-$(CONFIG_ASUS_OLED) += asus_oled/
obj-$(CONFIG_PANEL) += panel/
obj-$(CONFIG_ALTERA_PCIE_CHDMA) += altpciechdma/

View file

@ -0,0 +1,10 @@
config ALTERA_PCIE_CHDMA
tristate "Altera PCI Express Chaining DMA driver"
depends on PCI
default N
---help---
A reference driver that exercises the Chaining DMA logic reference
design generated along the Altera FPGA PCI Express soft or hard core,
only if instantiated using the MegaWizard, not the SOPC builder, of
Quartus 8.1.

View file

@ -0,0 +1,2 @@
obj-$(CONFIG_ALTERA_PCIE_CHDMA) += altpciechdma.o

View file

@ -0,0 +1,15 @@
DONE:
- functionality similar to logic testbench
TODO:
- checkpatch.pl cleanups.
- keep state of DMA engines.
- keep data structure that keeps state of each transfer.
- interrupt handler should iterate over outstanding descriptor tables.
- complete userspace cdev to read/write using the DMA engines.
- split off the DMA support functions in a module, re-usable by custom
drivers.
Please coordinate work with, and send patches to
Leon Woestenberg <leon@sidebranch.com>

File diff suppressed because it is too large Load diff