-
Notifications
You must be signed in to change notification settings - Fork 120
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #130 from enjoy-digital/litepcie_gen_dma_dict
Add DMA Channels dict support to litepcie_gen.
- Loading branch information
Showing
4 changed files
with
154 additions
and
88 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,45 +1,45 @@ | ||
# | ||
# This file is part of LitePCIe. | ||
# | ||
# Copyright (c) 2019 Florent Kermarrec <florent@enjoy-digital.fr> | ||
# Copyright (c) 2019-2024 Florent Kermarrec <florent@enjoy-digital.fr> | ||
# SPDX-License-Identifier: BSD-2-Clause | ||
|
||
{ | ||
# PHY ---------------------------------------------------------------------- | ||
"phy": "S7PCIEPHY", # Type of PCIe PHY | ||
"phy_device": "xc7a", # Type of Device | ||
"phy_lanes": 4, # Number of lanes | ||
"phy_pcie_data_width": 128, # PCIe data_width | ||
"phy_data_width": 128, # Bus data_width | ||
"phy_bar0_size": 0x40000, # BAR0 size | ||
"phy" : "S7PCIEPHY", # Type of PCIe PHY | ||
"phy_device" : "xc7a", # Type of Device | ||
"phy_lanes" : 4, # Number of lanes | ||
"phy_pcie_data_width" : 128, # PCIe data_width | ||
"phy_data_width" : 128, # Bus data_width | ||
"phy_bar0_size" : 0x40000, # BAR0 size | ||
|
||
# Clocking ----------------------------------------------------------------- | ||
"clk_freq": 125e6, # User Clk Freq (AXI MMAP/DMA) | ||
"clk_external": False, # Use external User provided Clk | ||
"clk_freq" : 125e6, # User Clk Freq (AXI MMAP/DMA) | ||
"clk_external" : False, # Use external User provided Clk | ||
|
||
# Endpoint ----------------------------------------------------------------- | ||
"ep_max_pending_requests" : 8, | ||
"ep_address_width" : 32, | ||
|
||
# Control ------------------------------------------------------------------ | ||
"ctrl": False, | ||
"ctrl" : False, | ||
|
||
# MMAP Master -------------------------------------------------------------- | ||
"mmap": True, | ||
"mmap_base": 0x00020000, | ||
"mmap_size": 0x00020000, | ||
"mmap" : True, | ||
"mmap_base" : 0x00020000, | ||
"mmap_size" : 0x00020000, | ||
|
||
# MMAP Slave --------------------------------------------------------------- | ||
"mmap_slave": True, | ||
"mmap_slave_axi_full": True, | ||
"mmap_slave" : True, | ||
"mmap_slave_axi_full" : True, | ||
|
||
# DMA channels ------------------------------------------------------------- | ||
"dma_channels" : 4, # Number of DMA channels | ||
"dma_buffering" : 8192, # Buffering for each channel (in bytes) | ||
"dma_loopback" : True, # Enable DMA loopback capability | ||
"dma_synchronizer" : True, # Enable DMA synchronizer capability | ||
"dma_monitor" : True, # Enable DMA monitoring capability | ||
"dma_channels" : 4, # Number of DMA channels | ||
"dma_buffering" : 8192, # Buffering for each channel (in bytes) | ||
"dma_loopback" : True, # Enable DMA loopback capability | ||
"dma_synchronizer" : True, # Enable DMA synchronizer capability | ||
"dma_monitor" : True, # Enable DMA monitoring capability | ||
|
||
# MSI IRQs ----------------------------------------------------------------- | ||
"msi_irqs": 16, # Number or MSI IRQs | ||
"msi_irqs" : 16, # Number or MSI IRQs | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,45 +1,45 @@ | ||
# | ||
# This file is part of LitePCIe. | ||
# | ||
# Copyright (c) 2022 Florent Kermarrec <florent@enjoy-digital.fr> | ||
# Copyright (c) 2019-2024 Florent Kermarrec <florent@enjoy-digital.fr> | ||
# SPDX-License-Identifier: BSD-2-Clause | ||
|
||
{ | ||
# PHY ---------------------------------------------------------------------- | ||
"phy": "S7PCIEPHY", # Type of PCIe PHY | ||
"phy_device": "xc7a", # Type of Device | ||
"phy_lanes": 4, # Number of lanes | ||
"phy_pcie_data_width": 128, # PCIe data_width | ||
"phy_data_width": 128, # Bus data_width | ||
"phy_bar0_size": 0x40000, # BAR0 size | ||
"phy" : "S7PCIEPHY", # Type of PCIe PHY | ||
"phy_device" : "xc7a", # Type of Device | ||
"phy_lanes" : 4, # Number of lanes | ||
"phy_pcie_data_width" : 128, # PCIe data_width | ||
"phy_data_width" : 128, # Bus data_width | ||
"phy_bar0_size" : 0x40000, # BAR0 size | ||
|
||
# Clocking ----------------------------------------------------------------- | ||
"clk_freq": 125e6, # User Clk Freq (AXI MMAP/DMA) | ||
"clk_external": True, # Use external User provided Clk | ||
"clk_freq" : 125e6, # User Clk Freq (AXI MMAP/DMA) | ||
"clk_external" : True, # Use external User provided Clk | ||
|
||
# Endpoint ----------------------------------------------------------------- | ||
"ep_max_pending_requests" : 8, | ||
"ep_address_width" : 32, | ||
|
||
# Control ------------------------------------------------------------------ | ||
"ctrl": False, | ||
"ctrl" : False, | ||
|
||
# MMAP Master -------------------------------------------------------------- | ||
"mmap": True, | ||
"mmap_base": 0x00020000, | ||
"mmap_size": 0x00020000, | ||
"mmap" : True, | ||
"mmap_base" : 0x00020000, | ||
"mmap_size" : 0x00020000, | ||
|
||
# MMAP Slave --------------------------------------------------------------- | ||
"mmap_slave": True, | ||
"mmap_slave_axi_full": True, | ||
"mmap_slave" : True, | ||
"mmap_slave_axi_full" : True, | ||
|
||
# DMA channels ------------------------------------------------------------- | ||
"dma_channels" : 4, # Number of DMA channels | ||
"dma_buffering" : 1024, # Buffering for each channel (in bytes) | ||
"dma_loopback" : True, # Enable DMA loopback capability | ||
"dma_synchronizer" : False, # Enable DMA synchronizer capability | ||
"dma_monitor" : False, # Enable DMA monitoring capability | ||
"dma_channels" : 4, # Number of DMA channels | ||
"dma_buffering" : 1024, # Buffering for each channel (in bytes) | ||
"dma_loopback" : True, # Enable DMA loopback capability | ||
"dma_synchronizer" : False, # Enable DMA synchronizer capability | ||
"dma_monitor" : False, # Enable DMA monitoring capability | ||
|
||
# MSI IRQs ----------------------------------------------------------------- | ||
"msi_irqs": 16, # Number or MSI IRQs | ||
"msi_irqs" : 16, # Number or MSI IRQs | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,46 +1,57 @@ | ||
# | ||
# This file is part of LitePCIe. | ||
# | ||
# Copyright (c) 2020 Florent Kermarrec <florent@enjoy-digital.fr> | ||
# Copyright (c) 2019-2024 Florent Kermarrec <florent@enjoy-digital.fr> | ||
# SPDX-License-Identifier: BSD-2-Clause | ||
|
||
{ | ||
# PHY ---------------------------------------------------------------------- | ||
"phy": "USPCIEPHY", # Type of PCIe PHY | ||
"phy_device": "xcku", # Type of Device | ||
"phy_lanes": 4, # Number of lanes | ||
"phy_pcie_data_width": 128, # PCIe data_width | ||
"phy_data_width": 128, # Bus data_width | ||
"phy_bar0_size": 0x40000, # BAR0 size | ||
"phy" : "USPCIEPHY", # Type of PCIe PHY | ||
"phy_device" : "xcku", # Type of Device | ||
"phy_lanes" : 4, # Number of lanes | ||
"phy_pcie_data_width" : 128, # PCIe data_width | ||
"phy_data_width" : 128, # Bus data_width | ||
"phy_bar0_size" : 0x40000, # BAR0 size | ||
|
||
# Clocking ----------------------------------------------------------------- | ||
"clk_freq": 125e6, # User Clk Freq (AXI MMAP/DMA) | ||
"clk_external": False, # Use external User provided Clk | ||
"clk_freq" : 125e6, # User Clk Freq (AXI MMAP/DMA) | ||
"clk_external" : False, # Use external User provided Clk | ||
|
||
# Endpoint ----------------------------------------------------------------- | ||
"ep_max_pending_requests" : 8, | ||
"ep_address_width" : 64, | ||
|
||
# Control ------------------------------------------------------------------ | ||
"ctrl": False, | ||
"ctrl" : False, | ||
|
||
# MMAP Master -------------------------------------------------------------- | ||
"mmap": True, | ||
"mmap_base": 0x00020000, | ||
"mmap_size": 0x00020000, | ||
"mmap" : True, | ||
"mmap_base" : 0x00020000, | ||
"mmap_size" : 0x00020000, | ||
|
||
# MMAP Slave --------------------------------------------------------------- | ||
"mmap_slave": True, | ||
"mmap_slave" : True, | ||
|
||
# DMA channels ------------------------------------------------------------- | ||
"dma_channels" : 4, # Number of DMA channels | ||
"dma_writer" : True, # Enable DMA Writer. | ||
"dma_reader" : True, # Disable DMA Reader. | ||
"dma_buffering" : 8192, # Buffering for each channel (in bytes) | ||
"dma_loopback" : False, # Disable DMA loopback capability | ||
"dma_synchronizer" : False, # Disable DMA synchronizer capability | ||
"dma_monitor" : True, # Enable DMA monitoring capability | ||
"dma_channels": { | ||
"dma0": { | ||
"dma_writer" : True, # Enable DMA Writer. | ||
"dma_reader" : True, # Disable DMA Reader. | ||
"dma_buffering" : 8192, # Buffering for each channel (in bytes) | ||
"dma_loopback" : False, # Disable DMA loopback capability | ||
"dma_synchronizer" : False, # Disable DMA synchronizer capability | ||
"dma_monitor" : True, # Enable DMA monitoring capability | ||
}, | ||
"dma1": { | ||
"dma_writer" : True, # Enable DMA Writer. | ||
"dma_reader" : True, # Disable DMA Reader. | ||
"dma_buffering" : 8192, # Buffering for each channel (in bytes) | ||
"dma_loopback" : False, # Disable DMA loopback capability | ||
"dma_synchronizer" : False, # Disable DMA synchronizer capability | ||
"dma_monitor" : True, # Enable DMA monitoring capability | ||
}, | ||
}, | ||
|
||
# MSI IRQs ----------------------------------------------------------------- | ||
"msi_irqs": 16, # Number or MSI IRQs | ||
"msi_irqs" : 16, # Number or MSI IRQs | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters